# Emall **Repository Path**: guangnan007/mdd ## Basic Information - **Project Name**: Emall - **Description**: 麦嘟嘟电商是一个大型电商平台,支持商品管理、用户订单、支付、购物车等核心功能,涉及高并发、大数据量的处理。项目旨在为用户提供稳定、高效的购物体验,并具备良好的可扩展性。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-10-24 - **Last Updated**: 2025-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # E-Mall电商 #### 介绍 麦嘟嘟电商是一个大型电商平台,包括前台商城系统以及后台管理系统,基于 SpringCloud + SpringCloudAlibaba + MyBatis-Plus实现,采用 Docker 容器化部署。前台商城系统包括:用户登录、注册、商品搜索、商品详情、购物车、下订单流程、秒杀活动等模块。后台管理系统包括:系统管理、商品系统、优惠营销、库存系统、订单系统、用户系统、内容管理等七大模块。 ### 项目亮点 1.**用 可靠消息+最终一致性的方案 达到 库存微服务+订单微服务+其他微服务(分布式事务) 的最终一致性** 2.有自己的一套**购物车**设计理念:把购物车分为临时购物车和用户购物车;**优化了用户购物体验** 3.使用 **AOP+SPEL** 和**工厂模式+策略模式** 实现了一套通用的 **分布式锁,**并且封装了自己的 **Starter;以及对Feign模块、用户信息拦截器等的抽取,降低代码耦合度30%。** ### 组织结构 ``` gulimall ├── gulimall-common -- 工具类及通用代码 ├── renren-generator -- 人人开源项目的代码生成器 ├── gulimall-auth-server -- 认证中心(社交登录、OAuth2.0、单点登录) ├── gulimall-cart -- 购物车服务 ├── gulimall-coupon -- 优惠卷服务 ├── gulimall-gateway -- 统一配置网关 ├── gulimall-order -- 订单服务 ├── gulimall-product -- 商品服务 ├── gulimall-search -- 检索服务 ├── gulimall-seckill -- 秒杀服务 ├── gulimall-third-party -- 第三方服务 ├── gulimall-ware -- 仓储服务 └── gulimall-member -- 会员服务 ``` ### 技术选型 **后端技术** | 技术 | 说明 | 官网 | | :----------------: | :----------------------: | :---------------------------------------------: | | SpringBoot | 容器+MVC框架 | https://spring.io/projects/spring-boot | | SpringCloud | 微服务架构 | https://spring.io/projects/spring-cloud | | SpringCloudAlibaba | 一系列组件 | https://spring.io/projects/spring-cloud-alibaba | | MyBatis-Plus | ORM框架 | https://mp.baomidou.com | | renren-generator | 人人开源项目的代码生成器 | https://gitee.com/renrenio/renren-generator | | Elasticsearch | 搜索引擎 | https://github.com/elastic/elasticsearch | | RabbitMQ | 消息队列 | https://www.rabbitmq.com | | Springsession | 分布式缓存 | https://projects.spring.io/spring-session | | Redisson | 分布式锁 | https://github.com/redisson/redisson | | Docker | 应用容器引擎 | https://www.docker.com | | OSS | 对象云存储 | https://github.com/aliyun/aliyun-oss-java-sdk | **前端技术** | 技术 | 说明 | 官网 | | :-------: | :--------: | :-----------------------: | | Vue | 前端框架 | https://vuejs.org | | Element | 前端UI框架 | https://element.eleme.io | | thymeleaf | 模板引擎 | https://www.thymeleaf.org | | node.js | 服务端的js | https://nodejs.org/en | ### 架构图 **业务架构图** ![UUvb7T.png](https://images.gitee.com/uploads/images/2020/0714/193425_9bb153d1_4914148.png) ### 环境搭建 #### 开发工具 | 工具 | 说明 | 官网 | | :-----------: | :-----------------: | :---------------------------------------------: | | IDEA | 开发Java程序 | https://www.jetbrains.com/idea/download | | RedisDesktop | redis客户端连接工具 | https://redisdesktop.com/download | | SwitchHosts | 本地host管理 | https://oldj.github.io/SwitchHosts | | X-shell | Linux远程连接工具 | http://www.netsarang.com/download/software.html | | Navicat | 数据库连接工具 | http://www.formysql.com/xiazai.html | | PowerDesigner | 数据库设计工具 | http://powerdesigner.de | | Postman | API接口调试工具 | https://www.postman.com | | Jmeter | 性能压测工具 | https://jmeter.apache.org | | Typora | Markdown编辑器 | https://typora.io | #### 开发环境 | 工具 | 版本号 | 下载 | | :-----------: | :----: | :----------------------------------------------------------: | | JDK | 1.8 | https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html | | Mysql | 5.7 | https://www.mysql.com | | Redis | Redis | https://redis.io/download | | Elasticsearch | 7.6.2 | https://www.elastic.co/downloads | | Kibana | 7.6.2 | https://www.elastic.co/cn/kibana | | RabbitMQ | 3.8.5 | http://www.rabbitmq.com/download.html | | Nginx | 1.1.6 | http://nginx.org/en/download.html | ###