Spring Cloud 微服务基础功能架构来啦~

本文记录了一名开发者自2021年开始,逐步构建和完善SpringCloud微服务架构的过程,包括版本选择、功能模块开发、集成与优化,如分布式ID、国际化、安全升级等,可供其他开发者参考和借鉴。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 前言

工作了很多年,都没有自己的一个项目脚手架,所以说,前阵子就准备搞一个自己的Spring Cloud微服务的架构。Spring Cloud 官网,2021-07-06 发布了Hoxton.SR12 这个版本, 本来想使用 Hoxton.SR12这个Spring Cloud版本,查了一些资料,发现基于这个版本,好用的微服务架构体系并且开源的项目不是很多,可能是这个版本刚出来两三个月,就自己折腾了一个基础架构。在进行依赖管理的过程中,走了不少坑,各种jar冲突或者版本不兼容等等,这里总结记录下,防止以后再次踩坑。

为了搭建自己的脚手架,方便以后项目的管理和维护,现在开发了这一套基础架构项目,该项目基于 Spring Boot+ Spring Cloud + MyBatis-Plus+Spring Cloud Alibaba,开发这个基础设施项目,专门用来给子项目继承或者子项目可以单独直接依赖该项目的某个小功能模块来使用。

为了提高项目的开发效率,降低项目的维护成本,建议直接继承使用该基础设施项目,避免重复造轮子。该项目后续也会继续迭代,来完善该基础功能架构。

2 核心组件版本号

核心组件版本号如下:

组件名称版本号
Spring Version5.2.15.RELEASE
Spring Boot Version2.3.12.RELEASE
Spring Cloud VersionHoxton.SR12
Spring Cloud Openfeign2.2.9.RELEASE
Spring Cloud Alibaba Version2.2.9.RELEASE
Nacos Version2.1.1
Seata Version1.5.2
Spring Data Redis Version2.4.13
Jedis Version3.3.0
Redisson Version3.16.1
MyBatis-Plus Version3.4.2
HikariCP Version3.4.5
MySQL Connector Version8.0.22
Xxl-Job2.2.0
JDK1.8

3 该微服务架构提供那些组件功能

该项目主要包括以下功能模块:

  • 统一管理项目依赖,核心依赖的版本控制
  • 缓存管理以及分布式锁的处理
  • 分布式id功能
  • 预警通知功能
  • 异常管理
  • 多语言国际化功能
  • 限流Api管理
  • Mock Server管理
  • 消息中间件MQ管理
  • 操作日志管理
  • 轻量级流程管理
  • 定时任务管理
  • 分布式事务管理
  • 项目安全管理
  • Swagger-Ui管理
  • 工具类管理
  • 网关服务管理

4 待完善的功能

  • 集成分库分表功能

  • 集成ELK管理模块

    如何快速的定位跟踪问题?那么,SkyWalking + ELK + Sentry + 钉钉预警,在做一些核心数据的统计报表,对于一般的项目开发,应该足够用了

5 基础项目下载地址

6 感谢参与维护此框架的小伙伴

6.1 2021年9~10月,完成了Spring Cloud微服务基础架构的技术选型,项目依赖的管理,以及核心功能模块的功能开发 @lijunwei

  • 统一管理项目依赖,核心依赖的版本控制
  • 缓存管理以及分布式锁的处理
  • 预警通知功能
  • 异常管理
  • 限流Api管理
  • Mock Server管理
  • 操作日志管理
  • 定时任务管理
  • Swagger-Ui管理
  • 工具类管理

6.2 2021年11月,完成了消息中间件以及网关服务的集成 @lizihao

  • 消息中间件MQ管理
  • 网关服务管理

6.3 2021年12月,完成了分布式id和国际化功能 @nibaoshan

  • 多语言国际化功能
  • 分布式id功能

6.4 2022年1月,集成了轻量级流程管理 @lijunwei

  • 轻量级流程管理

6.5 2021年10月~2023年2月,优化升级 @lijunwei

项目稳定运行了一年多,进行了相关优化,相关版本升级…

6.6 2023年3月,进行了安全升级以及集成了阿里的分布式事务 @lijunwei

  • Seata分布式事务管理
  • 项目安全管理 (非对称加密 加签验签 && 数据验证)

6.7 2023.3月,对阿里钉钉预警进行了api限流优化 @guoziran

  • 钉钉预警Api限流优化

详细的集成教程,可以参考我下一篇博客,写的非常详细: 基于Spring Cloud 的微服务架构脚手架,满满的干货来啦

写博客是为了记住自己容易忘记的东西,另外也是对自己工作的总结,希望尽自己的努力,做到更好,大家一起努力进步!

如果有什么问题,欢迎大家一起探讨,代码如有问题,欢迎各位大神指正!

给自己的梦想添加一双翅膀,让它可以在天空中自由自在的飞翔!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值