这是一个基于 Spring Boot + Spring Cloud 的分布式秒杀系统课程项目。
当前版本完成了多模块工程搭建、用户服务核心接口、其余业务服务骨架以及网关路由,适合作为中期检查演示基础。
Distributed_software
├── seckill-common # 公共模块:统一返回体、异常、JWT工具
├── seckill-user-service # 用户服务(注册/登录/用户信息)
├── seckill-product-service # 商品服务(演示接口)
├── seckill-inventory-service # 库存服务(演示接口)
├── seckill-order-service # 订单服务(演示接口)
├── seckill-gateway # 网关服务(统一入口与路由)
├── scripts/sql # 初始化数据库脚本
└── pom.xml # Maven父工程
- 用户注册:
POST /api/user/register - 用户登录:
POST /api/user/login - 获取用户信息:
GET /api/user/info(Bearer Token) - 用户登出:
POST /api/user/logout
- 商品服务:
/api/product/health、/api/product/list - 库存服务:
/api/inventory/health、/api/inventory/{productId} - 订单服务:
/api/order/health、/api/order/create、/api/order/{orderNo} - 网关路由已配置:
/api/user/**、/api/product/**、/api/inventory/**、/api/order/**
- Java 11
- Spring Boot 2.7.14
- Spring Cloud 2021.0.5
- Spring Cloud Alibaba 2021.0.5.0
- MyBatis-Plus 3.5.3
- MySQL 8.x
- Redis
- JWT
- Maven 多模块
按顺序执行 scripts/sql 下脚本:
01_init_user_db.sql02_init_product_db.sql03_init_inventory_db.sql04_init_order_db.sql
- JDK 11+
- Maven 3.8+
- MySQL 8.x
- Redis
mvn clean compileseckill-user-service(8081)seckill-product-service(8082)seckill-inventory-service(8083)seckill-order-service(8084)seckill-gateway(8080)
POST http://localhost:8081/api/user/register
{
"username": "test01",
"password": "123456",
"email": "test01@example.com",
"phone": "13800000000"
}POST http://localhost:8081/api/user/login
{
"username": "test01",
"password": "123456"
}登录成功后会返回 token,用于访问 /api/user/info。
- 多模块微服务工程结构清晰,职责拆分明确
- 用户模块已实现完整登录认证链路(注册、登录、JWT鉴权)
- 商品/库存/订单模块完成独立可启动服务骨架
- 网关完成统一入口与路由转发配置
- SQL 脚本和 README 已完善,便于快速复现实验环境
- 完成商品、库存、订单真实业务逻辑与数据库读写
- 接入服务注册与配置中心(Nacos)
- 增加消息队列异步削峰(RabbitMQ)
- 补充单元测试与接口测试,完善异常处理与日志体系