Spring Cloud版本命名规则,你必须要了解!

SpringCloud官网: https://spring.io/projects/spring-cloud/#learn

前言

在使用SpringCloud及SpringBoot搭建项目框架之前,都需要去了解二者之间版本的兼容对应关系,关于SpringBoot和SpringCloud官方版本号的命名规则很是好奇,想要一探究竟,那么显而易见,SpringBoot的版本号是通过数字来命名的,SpringCloud则是通过希腊英文字母的方式,在发布的版本时是以伦敦地铁站作为版本命名,并按地铁站名称的首字母A-Z依次命名。

  • 第一代版本: Angle;
  • 第二代版本: Brixton;
  • 第三代版本: Camden;
  • 第四代版本: Dalston;
  • 第五代版本: Edgware;
  • 第六代版本: Finchley;
  • 第七代版本: GreenWich;
  • 第八代版本: Hoxton;

官方版本发布如下:
在这里插入图片描述


一、Spring Boot版本号

1. 举例:2.3.3.RELEASE

  • 其中2: 表示的主版本号,表示是我们的SpringBoot第二代产品,当功能模块有较大更新或者整体架构发生变化时,主版本号会更新。

  • 其中3: 表示的是次版本号,增加了一些新的功能但是主体的架构是没有变化的,是兼容的,只是局部的一些变动。。

  • 其中3: 表示的一般是bug的修改或者是小的变动。

  • RELEASE:希腊字母版本号。此版本号用户标注当前版本的软件处于哪个开发阶段

  • 所以2.3.3.RELEASE合起来就是springboot的第二代版本的第3个小版本的第3次bug修复版本。

SpringBoot版本格式: 主版本号.子版本号.修正版本号。

2. 尾巴希腊字母版本号解释

在这里插入图片描述

  • snapshot: 快照
  • alpha : 内测
  • beta : 公测
  • release : 稳定版本
  • GA: 最稳定版本
  • Final : 正式版
  • Pro(professional) : 专业版
  • Plus: 加强版
  • Retail : 零售版
  • DEMO : 演示版
  • Build : 内部标号
  • Delux: 豪华版 (deluxe:豪华的,华丽的)
  • Corporation或Enterpraise 企业版
  • M1 M2 M3 : M是milestone的简写 里程碑的意思
  • RC 版本RC:(Release Candidate),几乎就不会加入新的功能了,而主要着重于除错
  • SR : 修正版
  • Trial : 试用版
  • Shareware : 共享版
  • Full : 完全版

名词解释:

build-snapshot: 开发版本,也叫快照版本。当前版本处于开发中,开发完成之后,自己进行测试,另外让团队其它人也进行测试使用下;

M1…M2(Milestone): 里程碑版本,在版发布之前 会出几个里程碑的版本。使用snapshot版本开发了一个时间,觉得最近写代码杠杠的,那么就整几个里程碑版本记录下吧,记录我们这个重大的时刻,是你我未来的回忆。

RC1…RC2(Release Candidates): 发布候选。内部开发到一定阶段了,各个模块集成后,经过细心的测试整个开发团队觉得软件已经稳定没有问题了,可以对外发行了。

release: 正式版本。发布候选差不多之后,那么说明整个框架到了一定的阶段了,可投入市场大面积使用了,那么发布出去,让广大用户来吃吃香吧。

SR1…SR2(Service Release): 修正版。这是啥意思呐,这不release版本发布之后,让广大群体使用了嘛,再牛逼的架构师,也无法写出零bug的代码,那么这时候,就优先对于release版本的问题进行修复,这时候每次迭代的版本就是SR1,SR2,SR3。

上述顺序:

snapshot –>M1…MX –> RC1…RCX –> release –> SR1…SRX

对应的文字理解:

开发版本(BS) --(开发到一个小阶段,就要标记下)–> 里程碑版本(MX) --(版本到了一个相对稳定的阶段,可以对外发行了,但是可能还存在修复的问题,此时只做修复,不做新功能的增加)–> 发布候选(RC1) --(BUG修复完成,发布)–>正式版本(release) --(外界反馈存在一些问题,进行内部在修复)–> 修正版本(SRX)


二、生产环境版本选择

在生产环境部署时,SpringCloud的版本和SpringBoot的版本一定要选择最稳定的,避免选择不稳定的版本对项目造成一些生产上的重大事故。
在这里插入图片描述

1. 版本选择

  • CURRENT:当前推荐的版本。

  • GA:稳定版,可用于生产

  • PRE :里程碑版/预览版本

  • SNAPSHOT : 快照

版本号只是一个标识,方便大家在使用时引入版本号即可。为了稳定起见,我们一般选择是RELEASE、CURRENT和GA版本,SNAPSHOT打死不选。


2. 2.4 0-M2 PRE

2.4.0: 第二代Spring Boot的第4个小版本的第0次bug修复;

M2: 这是2.4.0版本的第2次里程碑版本啦;

PRE: 程碑版本/预览版本,告知我们这个是里程碑版本,先偷腥的人可以来;


3. 2.3.3 CURRENT GA

2.3.3 : 第二代Spring Boot的第3个小版本的第3次bug修复;

CURRENT : 这是官网当前推荐的使用版本;

GA: 这是稳定版本,可用于生产环境。


4. 2.3.4 SNAPSHOT

2.3.4: 第二代Spring Boot的第3个小版本的第4次bug修复;

SNAPSHOT: 这是我们内部在开发的一个版本啦,也是对于2.3.4版本的bug迭代版本;


5. 2.2.9 GA

2.2.9: 第一代Spring Boot的第2个小版本的第9次bug修复;

GA: 这是稳定版本,可用于生产;


三. 版本对应关系

Release train Spring Boot compatibility

Spring Cloud Release Train Spring Boot Version
Hoxton 2.2.x
Greenwich 2.1.x
Finchley 2.0.x
Edgware 1.5.x
Dalston 1.5.x
Camden 1.4.x
Brixton 1.3.x
Angle 1.2.x

注意: 官方通告SpringBoot1.5.x及以下版本官方不再提供维护了,建议开发者选择使用SpringBoot2.0.x以上的版本,相对应的SpringCloud版本也最好不要使用。

总结

提示: 生产环境的版本选择很重要,切记要选择稳定的SpringBoot和SpringCloud版本进行开发。

猜你喜欢

转载自blog.csdn.net/Thinkingcao/article/details/108362819