JeecgBoot 3.4.0 版本发布,微服务重构版本
当前版本:v3.4.0 | 2022-08-06
升级日志
微服务重构专项升级,简化优化微服务架构,让微服务使用更加方便。
主要改造点
- 升级Spring Cloud Alibaba 2021.0.1.0,使用 spring.config.import 方式引入nacos配置
- 拆分jeecg-boot-starter出来,使用独立项目维护 jeecg-boot-starter项目新地址
- 升级微服务3.4+版本对应文档
- 本次只升级后台版本号,暂时未更新前端
优化点解决
- 1 解决原微服务模块,自定义nacos配置不方便
- 2 解决原微服务模块,自定义数据源不方便
- 3 nacos配置下放到每个模块,加上import方式,集成更灵活
- 4 解决切换微服务不方便,要手工改很多东西
- 5 原微服务结构不清晰,有点乱
- 6 存在本地配置和nacos冲突问题
- 7 Dockerfile存在缺陷
- 8 gateway走自己的nacos配置,原来太冗余太重
- 9 jeecg-boot-starter拆分出来,让项目更简单,降低入门难度
- 10 默认不引入jeecg-cloud-test示例项目,降低入门难度
- 11 文档升级,各个功能集成更加简单(import带来的好处)
微服务文档
- 单体升级成微服务
- 使用archetype生成微服务模块
- Docker镜像启动微服务项目
- Gateway网关高级配置
- 分库分表ShardingSphere用法
- 微服务模块配置独立的数据源和Nacos配置
微服务技术栈
-
基础框架:Spring Boot 2.6.6
-
微服务框架: Spring Cloud Alibaba 2021.0.1.0
-
持久层框架:MybatisPlus 3.5.1
-
报表工具: JimuReport 1.5.2
-
安全框架:Apache Shiro 1.8.0,Jwt 3.11.0
-
微服务技术栈:Spring Cloud Alibaba、Nacos、Gateway、Sentinel、Skywalking
-
数据库连接池:阿里巴巴Druid 1.1.22
-
日志打印:logback
-
其他:autopoi, fastjson,poi,Swagger-ui,quartz, lombok(简化代码)等。
微服务解决方案
1、服务注册和发现 Nacos
2、统一配置中心 Nacos
3、路由网关 gateway(三种加载方式)
4、分布式 http feign
5、熔断降级限流 Sentinel
6、分布式文件 Minio、阿里OSS
7、统一权限控制 JWT + Shiro
8、服务监控 SpringBootAdmin
9、链路跟踪 Skywalking 参考文档
10、消息中间件 RabbitMQ
11、分布式任务 xxl-job
12、分布式事务 Seata
13、分布式日志 elk + kafka
14、支持 docker-compose、k8s、jenkins
15、CAS 单点登录
16、路由限流