欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

荐 Spring Boot 与 Spring Cloud 之间的版本选择

程序员文章站 2022-03-26 14:42:48
本文目录:写在开头1.Spring Cloud 版本规则2.版本选型问题2.1 Spring Boot 选择2.2 Spring Cloud 版本选择3.接口方式查询版本对应关系写在开头  在学习 Spring Cloud 之前,我们需要知道这么一个前提:Spring Cloud 必须使用 Spring Boot 开发。所以在学习 Spring Cloud 之前,你得会使用 Spring Boot。  截止 2020 年 7 月 7日。尽管 Spring Boot 最新版本已经是 2.3.1,Spri...


写在开头

  接上一篇文章:微服务架构 与 Spring Cloud 的前世今生。在学习 Spring Cloud 之前,我们需要知道这么一个前提:Spring Cloud 必须使用 Spring Boot 开发 。所以在学习 Spring Cloud 之前,你得会使用 Spring Boot。

  截止 2020 年 7 月 7日。尽管 Spring Boot 最新版本已经是 2.3.1,Spring Cloud 最新版本是 Hoxton SR6,我们通常把它叫做 Spring Cloud H版Hoxton SR6 是什么玩意?? 这里就得说道说道 Spring Cloud 版本的由来了。

  由于跟随配套课程的学习,课程当初 Spring Boot 最新版本为 2.2.4,Spring Cloud 最新版本为 Hoxton SR1。为了学习版本的一致,所以本文在接下来通过这两个版本进行分析。

1.Spring Cloud 版本规则

荐
                                                        Spring Boot 与 Spring Cloud 之间的版本选择
  大多数 Spring 项目是以 "主版本号.次版本号.增量版本号.里程碑版本号" 的形式命名版本。主版本号 表示项目的重大重构;次版本号 表示新特性的添加和变化;增量版本号 一般表示Bug修复;里程碑版本号 表示某版本号的里程碑;例如:Spring Framework 稳定版本4.3.5.RELEASE、里程碑版本 5.0.0.M4 等。

  来到 Spring Cloud 这块,它并未采用上面这种方式。而是以 "英文单词SRX(X为数字)" 的形式命名版本号。因为 Spring Cloud 是一个综合项目,包含很多的子项目,由于子项目也维护着自己的版本号,所以采用这种命名方式避免与子项目的版本混淆。

  "英文单词" 叫做 Release Train(俗称:火车发版),Camden、Dalston、Edgware、Finchley、Greenwich、Hoxton 等都是 伦敦地铁 的名称,按照字母顺序发行;

  "SRX" 表示 Service Release,其中X是一个递增数字。一般表示 Bug 后的版本;在 SR 版本发布之前,会先发布一个 Release 版本,例如在发布 Edgware SR1之前,会先发布 Edgware RELEASE。

  "GA" 表示 General Availability,正式发布的版本,官方推荐使用此版本。在国外都是用 GA 来说明 Release 版本的。

  "RC" 表示 Release Candidate,候选版本,几乎不会加入新功能,着重于除错,是最终版之前的最后版本。

  "SNAPSHOT" 表示 快照版本,不稳定、尚处于开发中的版本。

  "PRE" 表示 预览版,内部测试版。主要是给开发人员和测试人员测试和找BUG用的,不建议使用。

2.版本选型问题

提示:并不是用最新的就最好哦,这里也是有一个对应关系的

2.1 Spring Boot 选择

  在Spring Boot 2.x 之前,我们使用的都是1.x 版本。但是在 2.x 版本出来之后,Spring 官方推荐我们升级使用 Spring Boot 2.x 版本。

  接下来在 Spring Cloud 的学习中,我们使用的 Spring Boot 将会是 2.x 版本。 官方文档可参考:Spring Boot 2.x 新特性。如图所示:
荐
                                                        Spring Boot 与 Spring Cloud 之间的版本选择
  跟随配套课程的学习,当初 Spring Boot 最新版本为 2.2.4,选择最新版本来用显然是最好的。但是在此处 Spring Boot 的选择却不是越新越好,这是为什么??接下来继续看 Spring Cloud 版本的选择。

2.2 Spring Cloud 版本选择

  在上文中介绍,我们已经了解了 Spring Cloud 版本命名规则。跟随配套教程的学习,当初 Spring Cloud 最新版本为 Hoxton SR1。我们就选择当前最新版本 Hoxton SR1 来进行学习,但是为什么 Spring Boot 却不能选择最新版本呢?

  在这之间,Spring Boot 和 Spring Cloud 有一个对应关系的。在Spring Cloud官网,我们可以找到图中所对应的关系。
荐
                                                        Spring Boot 与 Spring Cloud 之间的版本选择
  图中说明,Spring Cloud Hoxton 版本对应的是 Spring Boot 2.2.x 版本。那么为什么还是不能使用当时最新的 Spring Boot 2.2.4 版本呢??我们继续往下看,点击图中 Reference Doc,我们可以看到下面这样的内容。(图中版本为 Hoxton SR6,此处跟随教程学习使用 Hoxton SR1 版本,该图仅用作展示 Reference Doc 的位置)
荐
                                                        Spring Boot 与 Spring Cloud 之间的版本选择
  除此之外,我们也可以通过官网链接来查看版本对应关系:https://cloud.spring.io/spring-cloud-static/Hoxton.SR1/reference/html/(此处为 Hoxton SR1 版本),图片如下:
荐
                                                        Spring Boot 与 Spring Cloud 之间的版本选择

3.接口方式查询版本对应关系

  我们也可以通过调用接口的方式,来查看它们的对应关系。接口如下:https://start.spring.io/actuator/info,不过这样的方式不是太准确,它也只是给出了一个版本之间的对应关系而已。
荐
                                                        Spring Boot 与 Spring Cloud 之间的版本选择
Spring Cloud 系列下一篇:基于 RestTemplate 搭建微服务工程

出于对 没有微服务思想 的初学者友好,特增设此篇,大佬请略过,我怕"挨打",Paola Paola


博主写作不易,加个关注呗

求关注、求点赞,加个关注不迷路 ヾ(◍°∇°◍)ノ゙

博主不能保证写的所有知识点都正确,但是能保证纯手敲,错误也请指出,望轻喷 Thanks♪(・ω・)ノ

本文地址:https://blog.csdn.net/lzb348110175/article/details/107179882