接触Spring Cloud时日不短了,项目中也用了不少,但是一直没有将使用的经验记录下来,从这篇文章开始,决定写一个Spring Cloud的系列教程。
在学习一个新技术之前,肯定要对这个技术的现在,过去,将来有一个比较全面的了解。对于IT框架技术最直观的一项就是了解它的版本信息,相信很多朋友对繁杂的版本一头雾水。下面就介绍一下spring-cloud的版本迭代。官网版本地址传送门:https://spring.io/projects/spring-cloud,拖到最底部,就可以看到版本介绍了。
Spring Cloud是一个由众多独立子项目组成的大型综合项目,每个子项目有不同的发行节奏,都维护着自己的发布版本号。Spring Cloud通过一个资源清单BOM(Bill of Materials)来管理每个版本的子项目清单。为避免与子项目的发布号混淆,所以没有采用版本号的方式,而是通过命名的方式。
这些版本名称的命名方式采用了伦敦地铁站的名称,同时根据字母表的顺序来对应版本时间顺序,比如:最早的Release版本:Angel,第二个Release版本:Brixton,然后是Camden、Dalston、Edgware,Finchley,目前最新的是Greenwich版本。每一个版本首字母A,B,C,D向下排列,最新版本可以简称为G版本。
Spring Cloud的项目是构建与Spring Boot之上,所以他们之间有一个对应对应关系,见下图:
Release Train | Boot Version |
---|---|
Greenwich | 2.1.x |
Finchley | 2.0.x |
Edgware | 1.5.x |
Dalston | 1.5.x |
需要强调的是:
- Finchley 与 Spring Boot 2.0.x, 兼容,不支持 Spring Boot 1.5.x.
- Dalston 在2018年12月不再维护
- Dalston 和 Edgware 与 Spring Boot 1.5.x, 兼容,不支持 Spring Boot 2.0.x
- 其他D向下的版本也已经停止维护,建议直接入手Finchley版本
当一个版本的Spring Cloud项目的发布内容积累到临界点或者解决了一个严重bug后,就会发布一个“service releases”版本,简称SRX版本,其中X是一个递增数字。见下图:
Component | Edgware.SR6 | Finchley.SR2 | Finchley.BUILD-SNAPSHOT |
---|---|---|---|
spring-cloud-aws | 1.2.4.RELEASE | 2.0.1.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-bus | 1.3.4.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-cli | 1.4.1.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-commons | 1.3.6.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-contract | 1.2.7.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-config | 1.4.7.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-netflix | 1.4.7.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-security | 1.2.4.RELEASE | 2.0.1.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-cloudfoundry | 1.1.3.RELEASE | 2.0.1.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-consul | 1.3.6.RELEASE | 2.0.1.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-sleuth | 1.3.6.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-stream | Ditmars.SR5 | Elmhurst.SR1 | Elmhurst.BUILD-SNAPSHOT |
spring-cloud-zookeeper | 1.2.3.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-boot | 1.5.21.RELEASE | 2.0.6.RELEASE | 2.0.7.BUILD-SNAPSHOT |
spring-cloud-task | 1.2.4.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-vault | 1.1.3.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-gateway | 1.0.3.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-openfeign | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT | |
spring-cloud-function | 1.0.2.RELEASE | 1.0.0.RELEASE | 1.0.1.BUILD-SNAPSHOT |
大版本变迁:
最大的版本跨域的E版本到F版本,体现在对Spring Boot的版本支持的改变
版本标注关键字介绍:
SNAPSHOT: 快照版本,随时可能修改
M: MileStone,M1表示第1个里程碑版本,一般同时标注PRE,表示预览版版。
SR: Service Release,SR1表示第1个正式版本,一般同时标注GA:(GenerallyAvailable),表示稳定版本。
RC: idea里面的 RC版本英文版名字叫Release Candidate(候选版本)
以下是可能遇到的关键字文档截图:
对于版本的选择
SNAPSHOT 尝鲜,GA 使用于生产
下一篇:Spring Cloud注册中心,Eureka(Finchley版本)https://blog.youkuaiyun.com/NDKHBWH/article/details/94617964