mall-swarm README

The project's README from github.com/macrozheng/mall-swarm. As one markdown file: README.md.

mall-swarm

公众号 交流 学习教程 后台项目 前端项目 前台商城项目 码云

友情提示

  1. 快速体验项目:在线访问地址 。
  2. 全套学习教程:《mall-swarm微服务学习教程》 。
  3. 视频教程:《mall-swarm视频教程》 。
  4. Spring Cloud全套教程:《SpringCloud学习教程》 。
  5. 分支说明:master分支基于Spring Cloud 2025+Spring Boot 3.5,dev-v2分支基于Spring Cloud 2021+Spring Boot 2.7。

项目简介

mall-swarm是一套微服务商城系统,采用了 Spring Cloud 2025 & Alibaba、Spring Boot 3.5、Sa-Token、MyBatis、Elasticsearch、Docker、Kubernetes等核心技术,同时提供了基于Vue的管理后台方便快速搭建系统。mall-swarm在电商业务的基础集成了注册中心、配置中心、监控中心、网关等系统功能。文档齐全,附带全套Spring Cloud教程。

项目演示

后台管理系统

前端项目mall-admin-web地址:https://github.com/macrozheng/mall-admin-web

项目演示地址: https://www.macrozheng.com/admin/index.html

后台管理系统功能演示

前台商城系统

前端项目mall-app-web地址:https://github.com/macrozheng/mall-app-web

项目演示地址(将浏览器切换为手机模式效果更佳):https://www.macrozheng.com/app/

前台商城系统功能演示

项目架构

系统架构

系统架构图

业务架构

业务架构图

组织结构

mall
├── mall-common -- 工具类及通用代码模块
├── mall-mbg -- MyBatisGenerator生成的数据库操作代码模块
├── 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 -- 微服务远程调用测试服务
└── config -- 配置中心存储的配置

技术选型

后端技术

技术 说明 官网
Spring Cloud 微服务框架 https://spring.io/projects/spring-cloud
Spring Cloud Alibaba 微服务框架 https://github.com/alibaba/spring-cloud-alibaba
Spring Boot 容器+MVC框架 https://spring.io/projects/spring-boot
Sa-Token 认证和授权框架 https://github.com/dromara/Sa-Token
MyBatis ORM框架 http://www.mybatis.org/mybatis-3/zh/index.html
MyBatisGenerator 数据层代码生成 http://www.mybatis.org/generator/index.html
PageHelper MyBatis物理分页插件 http://git.oschina.net/free/Mybatis_PageHelper
Knife4j 文档生产工具 https://github.com/xiaoymin/swagger-bootstrap-ui
Elasticsearch 搜索引擎 https://github.com/elastic/elasticsearch
RabbitMq 消息队列 https://www.rabbitmq.com/
Redis 分布式缓存 https://redis.io/
MongoDb NoSql数据库 https://www.mongodb.com/
Docker 应用容器引擎 https://www.docker.com/
Druid 数据库连接池 https://github.com/alibaba/druid
OSS 对象存储 https://github.com/aliyun/aliyun-oss-java-sdk
MinIO 对象存储 https://github.com/minio/minio
LogStash 日志收集 https://github.com/logstash/logstash-logback-encoder
Lombok 简化对象封装工具 https://github.com/rzwitserloot/lombok
Seata 全局事务管理框架 https://github.com/seata/seata
Portainer 可视化Docker容器管理 https://github.com/portainer/portainer
Jenkins 自动化部署工具 https://github.com/jenkinsci/jenkins
Kubernetes 应用容器管理平台 https://kubernetes.io/

前端技术

技术 说明 官网
Vue 前端框架 https://vuejs.org/
Vue-router 路由框架 https://router.vuejs.org/
Vuex 全局状态管理框架 https://vuex.vuejs.org/
Element 前端UI框架 https://element.eleme.io/
Axios 前端HTTP框架 https://github.com/axios/axios
v-charts 基于Echarts的图表框架 https://v-charts.js.org/

移动端技术

技术 说明 官网
Vue 核心前端框架 https://vuejs.org
Vuex 全局状态管理框架 https://vuex.vuejs.org
uni-app 移动端前端框架 https://uniapp.dcloud.io
mix-mall 电商项目模板 https://ext.dcloud.net.cn/plugin?id=200
luch-request HTTP请求框架 https://github.com/lei-mu/luch-request

环境搭建

开发环境

工具 版本号 下载
JDK 17 https://www.oracle.com/cn/java/technologies/downloads/#java17
Mysql 5.7 https://www.mysql.com/
Redis 7.0 https://redis.io/download
Elasticsearch 7.17.3 https://www.elastic.co/cn/downloads/elasticsearch
Kibana 7.17.3 https://www.elastic.co/cn/downloads/kibana
Logstash 7.17.3 https://www.elastic.co/cn/downloads/logstash
MongoDb 5.0 https://www.mongodb.com/download-center
RabbitMq 3.10.5 http://www.rabbitmq.com/download.html
nginx 1.22 http://nginx.org/en/download.html

搭建步骤

运行效果展示

公众号

加微信群交流,关注公众号「macrozheng」,回复「加群」即可。

公众号图片

许可证

Apache License 2.0

Copyright (c) 2018-2026 macrozheng

mall-swarm (macrozheng/mall-swarm)

Searching Database…

What is this?mall-swarm is a microservices-based e-commerce platform built with Spring Cloud and Spring Cloud Alibaba, bundling a storefront, mobile app backend, and an admin panel with full infrastructure like a registry, config center, monitoring, and gateway.
Is this a single app or a collection of microservices?It's a full microservices architecture split into separate services (registry, config, gateway, business services, monitoring) rather than one monolithic app, designed to be orchestrated via Docker or Kubernetes.
How do I get the backend and admin frontend running?Set up the backend dev environment following the project's dedicated backend setup guide, and deploy the separate mall-admin-web frontend project following its own frontend setup guide.
What infrastructure do I need before running this?You need JDK 17, MySQL 5.7, Redis 7.0, Elasticsearch/Kibana/Logstash 7.17.3, MongoDB 5.0, RabbitMQ 3.10.5, and nginx 1.22 set up first.
Which branch should I use for which Spring Cloud version?The master branch runs on Spring Cloud 2025 + Spring Boot 3.5, while the dev-v2 branch is for the older Spring Cloud 2021 + Spring Boot 2.7 stack, so pick the branch matching your environment.
Who is this project for?It's aimed at Java/Spring developers who want to learn or build a production-style microservices e-commerce system, since it comes with full documentation and tutorials.
Can I try it without installing anything?Yes, the README links to an online demo for both the storefront and the admin backend, including a mobile-mode view of the shopping frontend.
What frontend stack powers the admin panel and storefront?The admin panel (mall-admin-web) uses Vue, Vuex, Vue-router, Element UI and v-charts, while the mobile storefront is built with uni-app and Vuex on top of Vue.
Does it support distributed transactions and object storage out of the box?Yes, it integrates Seata for global transaction management and supports both OSS and MinIO for object storage, along with Druid for connection pooling.
How is monitoring and logging handled?The stack ships with a monitoring center for service health and uses Logstash/Elasticsearch/Kibana for centralized log collection, plus Portainer for visual Docker container management.
Creator
macrozheng
Size
53.3 MB
Stars
13.2K
Age
6y
Commits · 90 Days