Spring Cloud实战电商我的项目mall-swarm地址:https://github.com/macrozheng...

摘要

之前把我的mall我的项目更新到了SpringBoot 2.3.0版本,微服务版本mall-swarm也已同步更新了。此次更新欠缺了我的项目的Spring Cloud技术栈,降级至Spring Cloud Hoxton版本并退出了Spring Cloud Alibaba、Oauth2和Knife4j,致力于打造Spring Cloud 最佳实际我的项目!

零碎架构图

我的项目组织构造

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 Alibaba,注册核心改用Nacos;
  • 权限性能改用Oauth2,实现对立认证和鉴权;
  • 集成Knife4j,实现网关聚合API文档;
  • 降级Spring Cloud Hoxton.SR5;
  • 降级Spring Boot 2.3.0.RELEASE;
  • 降级Elasticsearch 7.6.2;
  • ELK日志收集功能完善,采纳分场景收集日志的形式;
  • Window和Linux部署文档更新。

更新内容介绍

Spring Cloud Alibaba

集成了Spring Cloud Alibaba,注册核心和配置核心都改用了Nacos。之前应用的注册核心是Eureka,曾经进入保护期不再更新了,之前应用的配置核心是Spring Cloud Config,须要应用音讯队列能力实现配置刷新。Nacos既能够当注册核心又能够当配置核心,采纳Netty放弃TCP长连贯实现配置刷新,领有不便的治理界面,所以就改为应用Nacos了。原来的mall-registrymall-config模块已被移除,在config文件夹中寄存了Nacos中的配置,启动我的项目时须要导入到Nacos中去。

Oauth2

  • 之前我的项目中有个mall-security的模块,我把它称为平安模块。所有须要权限校验的模块都须要依赖它,有点工具包的感觉,在微服务中应用总感觉不三不四。
  • 这次改为应用Oauth2,增加了认证核心mall-auth,实现对立认证和鉴权,更加合乎微服务权限管制,具体能够参考《微服务权限终极解决方案,Spring Cloud Gateway + Oauth2 实现对立认证和鉴权!》。
  • 因为我的项目中存在两套不同的用户体系,后盾用户和前台用户,认证核心对多用户体系也有所反对,拜访认证核心时应用不同的client_idclient_secret即可辨别不同用户体系,后盾用户应用admin-app:123456,前台用户应用portal-app:123456
  • 对原来的登录接口做了兼容解决,别离会从外部调用认证核心获取Token,仍然能够应用。

Knife4j

之前每个微服务都有本人的API文档地址,须要独自拜访。这次把所有微服务的API文档都聚合到了网关上,对立了拜访入口,间接拜访网关的API文档地址即可,具体能够参考《微服务聚合Swagger文档,这波操作是真的香!》。

Spring Cloud Hoxton.SR5

Spring Cloud 和SpringBoot有着版本对应关系,降级到SpringBoot 2.3.0正好对应了该版本。

Window和Linux部署文档更新

因为局部组件的降级及我的项目构造的扭转,部署文档也更新了,部署有问题的参考最新文档!
  • mall-swarm在Windows环境下的部署:http://www.macrozheng.com/#/d...
  • mall-swarm在Linux环境下的部署(基于Docker容器):http://www.macrozheng.com/#/d...

其余

其余更新内容和mall我的项目基本相同,具体参考《Mall 电商实战我的项目公布重大更新,全面反对SpringBoot 2.3.0 !》。

运行成果一览

  • 查看注册核心服务信息;

  • 监控核心利用信息;



  • API文档信息;

  • 日志收集零碎信息;

  • 可视化容器治理;

我的项目地址

如此给力的微服务电商实战我的项目,连忙点个Star反对下吧!

https://github.com/macrozheng...