文章目录
- mall-swarm:基于 Spring Cloud 2025 的微服务电商系统
mall-swarm:基于 Spring Cloud 2025 的微服务电商系统
mall-swarm 是一套微服务商城系统,GitHub 上拿到了 13,011 个 Star。项目基于 Spring Cloud 2025 & Alibaba、Spring Boot 3.5 打造,核心依赖包括 Sa-Token 做认证授权、MyBatis 处理数据层、Elasticsearch 负责商品搜索,同时集成了 Docker 和 Kubernetes 支持容器化部署。
项目在电商业务之上,把微服务基础设施也一并搭好了:注册中心用 Nacos、配置中心同样走 Nacos、网关基于 Spring Cloud Gateway、监控中心基于 Spring Boot Admin。开箱即用,不用自己再拼凑这些组件。
从代码结构看,mall-swarm 拆成了多个模块:mall-common 放通用工具类和通用代码,mall-mbg 是 MyBatis Generator 生成的数据库操作代码,mall-auth 基于 Spring Security OAuth2 实现统一认证中心,mall-gateway 基于 Spring Cloud Gateway 实现 API 网关,mall-monitor 基于 Spring Boot Admin 搭建微服务监控中心,mall-admin 负责后台管理系统,mall-search 对接 Elasticsearch 做商品搜索,mall-portal 服务移动端商城,mall-demo 用来测试微服务间的远程调用。
后台管理系统前端基于 Vue + Vue-router + Vuex + Element,通过 Axios 发起 HTTP 请求,图表用 v-charts 渲染。移动端商城前端基于 Vue + uni-app,HTTP 请求走 luch-request。两套前端各自独立,后台管理提供商品管理、订单管理、会员管理、营销管理等完整的电商运营功能。
后端技术栈覆盖面比较全。消息队列用 RabbitMQ 处理异步任务,缓存用 Redis 做分布式缓存,MongoDB 存储非结构化数据,日志收集走 LogStash 配合 ELK 体系,对象存储支持阿里云 OSS 和 MinIO 两种方案,分布式事务用 Seata 处理,数据库连接池用 Druid,API 文档用 Knife4j 自动生成。容器化方面提供了 Docker 部署方案,也支持 Kubernetes 编排管理,Portainer 做容器可视化管理,Jenkins 负责自动化部署。
环境搭建要求 JDK 17、MySQL 5.7、Redis 7.0、Elasticsearch 7.17.3、MongoDB 5.0、RabbitMQ 3.10.5、Nginx 1.22。项目文档里给了 Windows 环境的详细部署步骤,前端项目的安装部署也有单独说明。文档还附带了完整的 Spring Cloud 学习教程和视频教程,适合想系统学习微服务开发的人拿来练手。
后台管理系统和前台商城都有在线演示地址,可以直接体验完整的电商功能流程。项目采用 Apache License 2.0 开源协议。
e License 2.0 开源协议。