敞开成长之旅!这是我参与「日新计划 2 月更文挑战」的第 3 天,点击查看活动概况

Spring Boot

Spring Boot 版别

截止 2023 年 1 月 20 日,Spring Boot 的最新版别为3.0.2,最新的版别信息能够查阅以下网站来获取:

  • Maven 中央库房
  • Spring Boot 官方文档
  • Spring Boot 2.0 官方发布日志

SpringCloud版本升级个组件替代方案

Spring Cloud

Spring Cloud 版别

截止 2023 年 1 月 20 日,Spring Cloud的最新版别为2022.0.1,最新的版别信息能够查阅以下网站来获取:

  • Maven 中央库房
  • Spring Cloud 官方文档

SpringCloud版本升级个组件替代方案

SpringBoot 版别的对应联系

Spring Cloud Version Spring Boot Version
2022.0.x aka Kilburn 3.0.x
2021.0.x aka Jubilee 2.6.x, 2.7.x (Starting with 2021.0.3)
2020.0.x aka Ilford 2.4.x, 2.5.x (Starting with 2020.0.3)
Hoxton 2.2.x, 2.3.x (Starting with SR5)
Greenwich 2.1.x
Finchley 2.0.x
Edgware 1.5.x
Dalston 1.5.x

最新官方给出说明:SpringCloud Dalston,Edgware,Finchely,Greenwich版别现已End of life,不再迭代,只修正对应BUG fixes。

SpringCloud版本升级个组件替代方案

Spring Cloud Alibaba

因为Spring Boot 2.4+和以下版别之间的变化较大,现在企业级客户老项目相关Spring Boot版别仍停留在 Spring Boot 2.4以下,为了一起满意存量用户和新用户不同需求,社区以Spring Boot 2.4为分界线,一起保护Spring Cloud Alibaba 2.2.x2021.x两个分支的迭代。

Spring CloudSpring Cloud Alibaba 最新的版别对应联系请看GitHub Wiki

2.2.x 分支

适配 Spring Boot 2.4、Spring Cloud Hoxton及以下的版别,Spring Cloud Alibaba各版别的对应联系如下表所示(最新版别用*符号)

Spring Cloud Alibaba Version Spring Cloud Version Spring Boot Version
2.2.9.RELEASE * Hoxton.SR12 2.3.12.RELEASE
2.2.8.RELEASE Hoxton.SR12 2.3.12.RELEASE
2.2.7.RELEASE Hoxton.SR12 2.3.12.RELEASE
2.2.6.RELEASE Hoxton.SR9 2.3.2.RELEASE
2.1.4.RELEASE Greenwich.SR6 2.1.13.RELEASE
2.2.1.RELEASE Hoxton.SR3 2.2.5.RELEASE
2.2.0.RELEASE Hoxton.RELEASE 2.2.X.RELEASE
2.1.2.RELEASE Greenwich 2.1.X.RELEASE
2.0.4.RELEASE (中止保护,主张晋级) Finchley 2.0.X.RELEASE
1.5.1.RELEASE (中止保护,主张晋级) Edgware 1.5.X.RELEASE

2021.x 分支

适配 Spring Boot 2.4、Spring Cloud 2021.x 及以上的版别,Spring Cloud Alibaba各版别的对应联系如下表所示(最新版别用*符号)。特别注意,该分支的Spring Cloud Alibaba版别命名方式进行了调整,未来将对应Spring Cloud版别,前三位为Spring Cloud版别,最终一位为扩展版别;比如适配Spring Cloud 2021.0.1版别对应的Spring Cloud Alibaba第一个版别为2021.0.1.0,第个二版别为2021.0.1.1,依此类推。

Spring Cloud Alibaba Version Spring Cloud Version Spring Boot Version
2021.0.4.0 * 2021.0.4 2.6.11
2021.0.1.0 2021.0.1 2.6.3
2021.1 2020.0.1 2.4.2

Alibaba 各组件之间的版别对应联系

每个Spring Cloud Alibaba组件的版别,及其本身所适配的各组件的对应版别联系如下表所示:

Spring Cloud Alibaba Version Sentinel Version Nacos Version RocketMQ Version Dubbo Version Seata Version
2.2.9.RELEASE 1.8.5 2.1.0 4.9.4 ~ 1.5.2
2021.0.4.0 1.8.5 2.0.4 4.9.4 ~ 1.5.2
2.2.8.RELEASE 1.8.4 2.1.0 4.9.3 ~ 1.5.1
2021.0.1.0 1.8.3 1.4.2 4.9.2 ~ 1.4.2
2.2.7.RELEASE 1.8.1 2.0.3 4.6.1 2.7.13 1.3.0
2.2.6.RELEASE 1.8.1 1.4.2 4.4.0 2.7.8 1.3.0
2021.1 or 2.2.5.RELEASE or 2.1.4.RELEASE or 2.0.4.RELEASE 1.8.0 1.4.1 4.4.0 2.7.8 1.3.0
2.2.3.RELEASE or 2.1.3.RELEASE or 2.0.3.RELEASE 1.8.0 1.3.3 4.4.0 2.7.8 1.3.0
2.2.1.RELEASE or 2.1.2.RELEASE or 2.0.2.RELEASE 1.7.1 1.2.1 4.4.0 2.7.6 1.2.0
2.2.0.RELEASE 1.7.1 1.1.4 4.4.0 2.7.4.1 1.0.0
2.1.1.RELEASE or 2.0.1.RELEASE or 1.5.1.RELEASE 1.7.0 1.1.4 4.4.0 2.7.3 0.9.0
2.1.0.RELEASE or 2.0.0.RELEASE or 1.5.0.RELEASE 1.6.3 1.1.1 4.4.0 2.7.3 0.7.1

Netflix 各组件代替计划

Netflix 公司在 2018 年前后宣告其间心组件 Hystrix、Ribbon、Zuul、Archaius 等均进入保护状态。同在 2018 年,Spring Cloud 在其 Roadmap 里就宣告将要终结的一些库 / 版别,其间最重要的就是指 Spring Cloud Netflix 项目进入保护形式,然后计划在 2020 年彻底移除。关于 Netflix 的产品,Spring Cloud 只保留了其 Eureka,其他组件全部移除,并给出了相应的代替产品。

代替计划概览

SpringCloud版本升级个组件替代方案

代替计划介绍

Zuul 代替计划

Netflix 虽然现已在 2018 年 5 月开源了 Zuul 2.x,但因为 Zuul 2.x 在 Spring Cloud Gateway 孵化之前一向跳票发布,并且 Spring Cloud Gateway 现在现已孵化成功,相较于 Zuul 1.x 在功能以及性能上都有明显的提升。Spring 官方引荐运用 Spring Cloud Gateway 代替 Zuul 1.x,因此在 Spring Boot 2.0 以上版别中,并没有对 Zuul 2.0 以上最新高性能版别进行集成,依然运用 Zuul 1.x 非 Reactor 形式(基于 Servlet 2.5 堵塞架构)的旧版别。

Ribbon 代替计划

Spring Cloud OpenFeign 在Hoxton.M2 RELEASED版别之后弃用了 Ribbon,运用Spring Cloud Loadbalancer作为客户端的负载均衡组件。从 Spring Cloud 2020 版别开始,Spring Cloud 彻底弃用了 Ribbon,运用 Spring Cloud Loadbalancer 作为客户端的负载均衡组件。

spring.io/guides/gs/s…

Hystrix 代替计划

Netflix Hystrix 是 Spring Cloud 中最早支持的一种容错计划,在 2018 年 11 月 20 日之后官方现已中止保护,最终一个正式版别为 1.5.18。在 Spring Cloud Greenwich 版中,Spring 官方引荐运用 Resilience4j 代替 Hystrix,也能够挑选运用 Spring Cloud Alibaba Sentinel。