微服务与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)是一种架构风格,一个大型复杂软件应 ...
随机推荐
- Aery的UE4 C++游戏开发之旅(2)编码规范
目录 C++基础类型规范 命名规范 头文件规范 字符串规范 字符集规范 参考 C++基础类型规范 由于PC.XBOX.PS4等各平台的C++基础类型大小可能不同(实际上绝大部分都是整型类型的大小不同) ...
- Spring Boot2解决idea console 控制台输出乱码
Idea默认配置是采用GBK, 而项目工程文件采用的是UTF-8. 编码不一致,导致idea Console控制台输出乱码. 网上的解决方案,大都是直接修改Settings=>Editor=&g ...
- Localize UI Elements 汉化界面(本地化)
In this lesson, you will learn the basics of localizing visible UI elements. By default, the applica ...
- FCC---CSS Flexbox: Apply the flex-direction Property to Create Rows in the Tweet Embed
The header and footer in the tweet embed example have child items that could be arranged as rows usi ...
- sqlserver默认隔离级别下并发批量update同一张表引起的死锁
提到死锁,最最常规的场景之一是Session1 以排它锁的方式锁定A表,请求B表,session2以排它锁的方式锁定B表,请求A表之类的,访问顺序不一致导致死锁的情况本文通过简化,测试这样一种稍显特殊 ...
- TCP/IP网络协议初识
目录 一.什么是协议? 二.什么是TCP/IP协议? 三.TCP/IP为什么这么多协议? 四.TCP/IP协议为什么分层? 五.TCP/IP协议如何入门? 六.TCP/IP 的分层: 七.各协议层打包 ...
- 六、接上一个博客-ITK例子运行结果
一.程序介绍 该程序的主要思路如下: 二.程序参数 1-程序自己创建三维图像的时候 我自己计算得到的参数如下: 三维图像参数: 旋转参数: 光线投射法参数: 当我们输入参数: -v 得到程序的输出 ...
- 学习java需要英语很好吗?
学习java需要英语很好吗? 编程语言起源于美国,是由英文构成的,其中包括几十个英文的关键字以及几百个英文的函数,除非需要对文本进行处理,否则一般不会出现中文.但是,它们都是孤立的单词,不构成任何语句 ...
- 《Google软件测试之道》
Google软件测试之道 Google对质量的理解 质量不等于测试,即质量不是被测出来的 开发和测试应该并肩齐驱,测试就是开发过程中不可缺少的一部分 质量是一种预防行为而不是检测 Google对软件测 ...
- java实现排列组合(通俗易懂)
个人感觉这篇文章(原文地址见文章尾)写的排列组合问题,非常的好,而且是一步一步引出排列组合问题,我也是看了这篇文章,一步一步按照这个思路来,最后会了自己的一套排列组合 也因此在算法竞赛中,两次用到了, ...