项目简介
本项目是基于Spring Cloud Alibaba的微服务架构示例,涵盖网关、认证、订单、库存、产品等多个核心模块。通过集成Spring Cloud Alibaba的Nacos、Sentinel、Seata等组件,实现了服务注册与发现、服务限流与熔断、分布式事务等功能。
项目的主要特性和功能
网关模块
- 路由转发:实现请求的路由转发。
- 限流熔断降级:借助Sentinel实现服务的限流、熔断和降级。
- 权限验证:在网关层进行权限验证,保障请求安全。
认证模块
- 鉴权:利用Spring Security和OAuth2.0实现用户认证和授权。
- JWT:使用JWT进行令牌的发放和验证。
订单模块
- 分布式事务:集成Seata实现分布式事务管理。
- 限流:通过Sentinel实现订单服务的限流。
- 服务间调用:使用Feign进行服务间的远程调用。
库存模块
- 库存管理:实现库存的查询和更新操作。
- 分页查询:运用MyBatis Plus实现分页查询功能。
产品模块
- 产品管理:实现产品的查询和更新操作。
- 分页查询:使用MyBatis Plus实现分页查询功能。
公共模块
- 工具类:提供常用的工具类和方法。
- 统一返回值:定义统一的返回值格式。
- Feign接口:定义服务间的Feign接口。
安装使用步骤
前提条件
- 已安装Java 8或更高版本。
- 已安装Maven。
- 已安装MySQL数据库。
- 已安装Redis。
- 已安装Nacos、Sentinel、Seata等Spring Cloud Alibaba组件。
步骤
- 复制项目
bash cd your-repo
- 配置数据库
在
application.yml
或application.properties
中配置数据库连接信息。 - 配置Redis
在
application.yml
或application.properties
中配置Redis连接信息。 - 启动Nacos 启动Nacos服务注册中心。
- 启动Sentinel 启动Sentinel控制台。
- 启动Seata 启动Seata服务。
- 启动各个微服务 分别启动网关、认证、订单、库存、产品等微服务。
- 访问服务
通过网关访问各个微服务,例如:
bash http://localhost:8080/order/create
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】