微服务与Spring Cloud基本概念、Spring Cloud版本命名方式与版本选择

微服务是什么?
Spring Cloud是什么?
Spring Cloud版本命名方式?
Spring Cloud版本选择?spring

1、微服务是什么架构

微服务是一种架构风格,是一种将单体应用开发为一组小型服务的方法,每一个服务运行在本身的进程中,服务间通讯采用轻量级通讯机制(一般用HTTP资源API)。这些服务围绕业务能力构建而且可经过全自动部署机制独立部署。这些服务共用一个最小型的集中式的管理,服务可用不一样的语言开发,使用不一样的数据存储技术。框架

2、Spring Cloud是什么分布式

Spring Cloud并非一个具体的框架,能够理解为一个工具箱,它提供了各种工具,能够快速构建分布式系统。
Spring Cloud的各个项目基于Spring Boot,将Netflix的多个框架进行封装,而且经过自动配置的方式将这些框架绑定到Spring的环境中。spring-boot

3、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等都是伦敦地铁的名称,按照字母顺序发行。
“SR”表示“Service Release”,通常表示Bug修复;
在SR版本发布以前,会先发布一个Release版本,例如在发布Edgware SR1以前,会先发布Edgware RELEASE。
“RC”表示“Release Candidate”候选版本,几乎不会加入新功能,着重于除错,是最终版以前的最后版本。
“SNAPSHOT”快照版本,不稳定、尚处于开发中的版本。
“M”表示“Milestone”,里程碑版,具备一些全新的功能或是具备里程碑意义的版本。ui

4、Spring Cloud版本选择spa

Spring Cloud版本与与子项目版本关系可查看:https://spring.io/projects/spring-cloud进程

Table 1. Release train Spring Boot compatibility
Release Train Boot Version

Hoxton

2.2.x

Greenwich

2.1.x

Finchley

2.0.x

Edgware

1.5.x

Dalston

1.5.x

  

Table 2. Release train contents
Component Edgware.SR6 Greenwich.SR2 Greenwich.BUILD-SNAPSHOT

spring-cloud-aws

1.2.4.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-bus

1.3.4.RELEASE

2.1.2.RELEASE

2.1.3.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.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-contract

1.2.7.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-config

1.4.7.RELEASE

2.1.3.RELEASE

2.1.4.BUILD-SNAPSHOT

spring-cloud-netflix

1.4.7.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-security

1.2.4.RELEASE

2.1.3.RELEASE

2.1.4.BUILD-SNAPSHOT

spring-cloud-cloudfoundry

1.1.3.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-consul

1.3.6.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-sleuth

1.3.6.RELEASE

2.1.1.RELEASE

2.1.2.BUILD-SNAPSHOT

spring-cloud-stream

Ditmars.SR5

Fishtown.SR3

Fishtown.BUILD-SNAPSHOT

spring-cloud-zookeeper

1.2.3.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-boot

1.5.21.RELEASE

2.1.5.RELEASE

2.1.8.BUILD-SNAPSHOT

spring-cloud-task

1.2.4.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-vault

1.1.3.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-gateway

1.0.3.RELEASE

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-openfeign

 

2.1.2.RELEASE

2.1.3.BUILD-SNAPSHOT

spring-cloud-function

1.0.2.RELEASE

2.0.2.RELEASE

2.0.3.BUILD-SNAPSHOT

 

Greenwich builds and works with Spring Boot 2.1.x, and is not expected to work with Spring Boot 1.5.x.

例如,Greenwich 版本基本Spring Boot 2.1.x构建,不兼容以前版本,如Spring Boot 1.5.x。

相关文章
相关标签/搜索