技术栈升级
升级过程
支持SpringBoot 2.7.0由于 mall-swarm 项目使用了Spring Cloud Gateway+Oauth2实现统一认证和鉴权的权限解决方案,所以说在mall项目中出现的循环依赖问题,这里并没有出现。升级SpringBoot 2.7.0还是挺顺利的,默认直接支持了!支持SpringCloud 2021升级SpringCloud 2021以后,Spring Cloud中有一个重要的组件被弃用了,那就是作为负载均衡组件的Ribbon。在有服务间调用需求的服务中,比如网关服务中,我们需要加入LoadBalancer依赖: <dependency> 否则在服务间调用时,会返回 Service Unavailable 错误信息。{ 支持Nacos 2.1.0之前项目使用Nacos作为注册中心和配置中心,这次把版本从 1.3.1 升级到了最新版2.1.0 ,使用上面基本没改变,除了在Windows上启动Nacos时需要添加standalone 参数。startup.cmd -m standalone 下面是使用Nacos作为配置中心的截图。 微服务权限解决方案升级升级了微服务权限解决方案,适配最新版Spring Cloud,实现思路: mall-auth 认证服务负责统一认证,mall-gateway 网关服务负责校验认证和鉴权,其他API服务(如mall-admin、mall-portal)则负责处理自己的业务逻辑。权限相关的逻辑只存在于认证服务和网关服务中,其他服务只是单纯地提供服务而没有任何权限相关逻辑。具体可以参考支持Nacos 2.1.0!这套Spring Cloud Gateway+Oauth2终极权限解决方案升级了!。Knife4j升级升级了Knife4j的版本,从 2.x 升级到了3.x ,由于Knife4j基本上就是换了皮肤的Swagger,所以只要解决之前Swagger升级的问题即可,具体可以参考升级 SpringBoot 2.6.x 版本后,Swagger 没法用了! 。来看下新版Knife4j的页面,和之前的版本基本没啥区别。 微服务监控升级mall-swarm 使用Spring Boot Admin作为微服务监控,升级后用法与之前基本一致。部署文档更新
运行效果演示
总结今天分享了一下 mall-swarm 项目的升级内容和升级过程中遇到的一些问题,基本能平滑过渡。自从改用日期作为版本号后,总感觉Spring Cloud的版本号看着有点迷糊,而且目前最新稳定版是2021,2022版本估计还在路上。项目源码地址
https://github.com/macrozheng/mall-swarm 微信8.0将好友放开到了一万,小伙伴可以加我大号了,先到先得,再满就真没了 扫描下方二维码即可加我微信啦, 2022,抱团取暖,一起牛逼。 推荐阅读
上一篇:“双十一”我只愿在购买知识上“剁爪”从此以后入门无忧的“巧问”教学指导视频新鲜上线!快去买买买! 下一篇:果壳少年,出发! |