Spring Cloud 项目目前仍然是快速迭代期,版本变化很快。这里整理一下版本相关的东西,备忘一下。
Spring Cloud并没有熟悉的数字版本号,而是对应一个开发代号。
Cloud代号 | Boot版本(train) | Boot版本(tested) | lifecycle |
---|---|---|---|
Angle | 1.2.x | incompatible with 1.3 | EOL in July 2017 |
Brixton | 1.3.x | 1.4.x | 2017-07卒 |
Camden | 1.4.x | 1.5.x | - |
Dalston | 1.5.x | not expected 2.x | - |
Edgware | 1.5.x | not expected 2.x | - |
Finchley | 2.x | not expected 1.5.x | - |
开发代号看似没有什么规律,但实际上首字母是有顺序的,比如:Dalston版本,我们可以简称 D 版本,对应的 Edgware 版本我们可以简称 E 版本。
二者均基于SpringBoot的1.5.x版本。但支持其他组件的版本不同,如以 Dalston.SR4 和 Edgware.RELEASE 来对比:
spring-cloud-config 分别对应 1.3.3和 1.4.0;
spring-cloud-netflix 分别对应 1.3.5和 1.4.0;
spring-cloud-consul 分别对应 1.2.1和 1.3.0;
spring-cloud-gateway 前者不支持,后者 1.0.0。
每个小版本的不同,会有细微差别。
F版本是个绝对的大版本,几乎所有组件,全部同步变更版本号为2.x。
Spring Cloud 小版本分为:
SNAPSHOT: 快照版本,随时可能修改
M: MileStone,M1表示第1个里程碑版本,一般同时标注PRE,表示预览版版。
SR: Service Release,SR1表示第1个正式版本,一般同时标注GA:(GenerallyAvailable),表示稳定版本。
从这一点来看,选择哪个版本都不是大问题,但提醒一下,遇到坑时,最好根据版本进行查询,否则你会发现你找到的办法不行。实际上是版本不匹配。
如果你项目需要和其他老项目交叉,以兼容为第一要务。
如果全新项目,可以考虑较新版本,如E版。如果你爱好踩坑,F拿去。
小版本没啥可说的,尝鲜:SNAPSHOT,生产:GA。
https://blog.csdn.net/54powerman/article/details/79163440
在写本篇文章时,Spring Cloud版本演进情况如下:
版本名称 | 版本 |
---|---|
Finchley | snapshot版 |
Edgware | snapshot版 |
Dalston SR1 | 当前最新稳定版本 |
Camden SR7 | 稳定版本 |
Brixton SR7 | 稳定版本 |
Angel SR6 | 稳定版本 |
从下Angel到上Finchley可以看出,版本的第一个字母是按照A-Z顺序编排的。这些单词是什么含义呢,大概的搜一下可以得出基本都是地名,官方说明是这些版本号的单词来自于英国伦敦的地铁站站名。
那么为什么要用单词而不是数字类型的版本号呢? 因为Spring Cloud包含了一系列的子系统,Spring Cloud Config,Spring Cloud Netflix,Spring Cloud Bus等,为了防止与这些子系统的版本号混淆,Spring Cloud的版本号全部使用英文单词。
版本号后面的SRX,X代表一个数字,这个是小版本号,就是在特定的版本中,修复一些致命问题,做的升级版本号。
Spring Cloud | Spring Boot |
---|---|
Finchley | 兼容Spring Boot 2.0.x,不兼容Spring Boot 1.5.x |
Dalston和Edgware | 兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x |
Camden | 兼容Spring Boot 1.4.x,也兼容Spring Boot 1.5.x |
Brixton | 兼容Spring Boot 1.3.x,也兼容Spring Boot 1.4.x |
Angel | 兼容Spring Boot 1.2.x |
转载,如有侵权,告知立即删除