微服务与Spring Cloud基本概念、Spring Cloud版本命名方式与版本选择
微服务是什么?
Spring Cloud是什么?
Spring Cloud版本命名方式?
Spring Cloud版本选择?
一、微服务是什么
微服务是一种架构风格,是一种将单体应用开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制(通常用HTTP资源API)。这些服务围绕业务能力构建并且可通过全自动部署机制独立部署。这些服务共用一个最小型的集中式的管理,服务可用不同的语言开发,使用不同的数据存储技术。
二、Spring Cloud是什么
Spring Cloud并不是一个具体的框架,可以理解为一个工具箱,它提供了各类工具,可以快速构建分布式系统。
Spring Cloud的各个项目基于Spring Boot,将Netflix的多个框架进行封装,并且通过自动配置的方式将这些框架绑定到Spring的环境中。
三、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”,里程碑版,具有一些全新的功能或是具有里程碑意义的版本。
四、Spring Cloud版本选择
Spring Cloud版本与与子项目版本关系可查看:https://spring.io/projects/spring-cloud
| Release Train | Boot Version |
|---|---|
|
Hoxton |
2.2.x |
|
Greenwich |
2.1.x |
|
Finchley |
2.0.x |
|
Edgware |
1.5.x |
|
Dalston |
1.5.x |
| 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。
微服务与Spring Cloud基本概念、Spring Cloud版本命名方式与版本选择的更多相关文章
- Spring Cloud 微服务六:调用链跟踪Spring cloud sleuth +zipkin
前言:随着微服务系统的增加,服务之间的调用关系变得会非常复杂,这给运维以及排查问题带来了很大的麻烦,这时服务调用监控就显得非常重要了.spring cloud sleuth实现了对分布式服务的监控解决 ...
- 庐山真面目之六微服务架构Consul集群、Ocelot网关集群和Nginx版本实现
庐山真面目之六微服务架构Consul集群.Ocelot网关集群和Nginx版本实现 一.简介 在上一篇文章<庐山真面目之五微服务架构Consul集群.Ocelot网关和Nginx版本实 ...
- 庐山真面目之七微服务架构Consul集群、Ocelot网关集群和IdentityServer4版本实现
庐山真面目之七微服务架构Consul集群.Ocelot网关集群和IdentityServer4版本实现 一.简介 在上一篇文章<庐山真面目之六微服务架构Consul集群.Ocelot网 ...
- 几种常见的微服务架构方案——ZeroC IceGrid、Spring Cloud、基于消息队列、Docker Swarm
微服务架构是当前很热门的一个概念,它不是凭空产生的,是技术发展的必然结果.虽然微服务架构没有公认的技术标准和规范草案,但业界已经有一些很有影响力的开源微服务架构平台,架构师可以根据公司的技术实力并结合 ...
- spring cloud深入学习(一)-----什么是微服务?什么是rpc?spring cloud简介
近年来,微服务非常的流行,那么为什么是它?简单介绍一下. 为什么是微服务? 微服务架构是一种将单应用程序作为一套小型服务开发的方法,每种应用程序都在其自己的进程中运行,并与轻量级机制(通常是HTTP资 ...
- .NET Core 微服务架构 Steeltoe 使用(基于 Spring Cloud)
阅读目录: 1. Spring Cloud Eureka 注册服务及调用 2. Spring Cloud Hystrix 断路器 3. Spring Cloud Hystrix 指标监控 4. Spr ...
- 【SpringCloud构建微服务系列】分布式链路跟踪Spring Cloud Sleuth
一.背景 随着业务的发展,系统规模越来越大,各微服务直接的调用关系也变得越来越复杂.通常一个由客户端发起的请求在后端系统中会经过多个不同的微服务调用协同产生最后的请求结果,几乎每一个前端请求都会形成一 ...
- Java 微服务框架选型(Dubbo 和 Spring Cloud?)
微服务(Microservices)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成.系统中的各个微服务可被独立部署,各个微服务之间是松耦合的.每个微服务仅关注于完成一件任务并很好地完成该任 ...
- [转]Java微服务框架选型(Dubbo 和 Spring Cloud?)
转载于 http://www.cnblogs.com/xishuai/p/dubbo-and-spring-cloud.html 微服务(Microservices)是一种架构风格,一个大型复杂软件应 ...
随机推荐
- 云原生技术之Docker入门
1. 为什么需要容器? 下图是一个比较传统的软件架构 做过java的同学可能对上图的架构方式比较了解,我们通常会将一个应用程序生成一个war包,放到一个tomcat容器当中并在一台虚拟机(VM)中启动 ...
- Stm32使用串口空闲中断,基于队列来接收不定长、不定时数据
串口持续地接收不定长.不定时的数据,把每一帧数据缓存下来且灵活地利用内存空间,下面提供一种方式供参考.原理是利用串口空闲中断和DMA,每当对方发来一帧完整的数据后,串口接收开始空闲,触发中断,在中断处 ...
- 二分查找(Java)
题目: 编写程序,完成以下功能: (1)输入5个整数到数组中; (2)使用冒泡法对5个数按从小到大排序,输出排序后的数组; (3)输入一个整数X,在数组中用二分法查找X,找到输出X在数组中的下标,找不 ...
- RabbitMQ 离线安装(带视频)
疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 架构师成长+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] 疯狂创客圈 高并 ...
- Ocelot网关在.Net Core 的使用
1. 项目环境 .Net Core 2.2 Ocelot 13.5.2 2. 基本使用 * Nuget 安装 Ocelot , Ocelot.Provider.Polly * 修改 Pro ...
- SVN安装简介
博主最近换个份工作,代码管理用的是SVN,因为之前用的Git管理代码的,SVN没接触过,既然公司中要用,就学习下使用吧.从最基本的安装开始吧. SVN官网:https://tortoisesvn.ne ...
- JS---课程介绍 + JavaScript分三个部分
Web API---课程介绍 DOM: 概念-----能够说出来--理解 作用----记住了----后来理解 回顾JS分几个部分---知道 DOM树---能够说出 ...
- [C]链接和生存周期
链接和生存周期的区别: 链接是标识符的属性: 生存周期是对象的属性: 链接可以是外部(external),内部(internal)或没有(none): 生存周期可以是自动的.静态的,或已分配的(all ...
- CSS新特性之3D转换
1. 三维坐标系 x轴:水平向右(右边是正,左边是负) y轴:垂直向下(向下是正,向上是负) z轴:垂直屏幕(向外是正,向里是负) 2. 3D转换 3D转换中最常用的是3D位移和3D旋转.主要知识点如 ...
- Map随笔:最常用的Map——HashMap
目录 Map随笔:最常用的Map--HashMap 前言: 1,HashMap的结构 2,HashMap的一些属性(JDK8) 3,HashMap的构造函数(JDK8) 4,HashMap的一些方法( ...