01-SpringCloud介绍
简介
Spring Cloud provides tools for developers to quickly build some of the common patterns in distributed systems (e.g. configuration management, service discovery, circuit breakers, intelligent routing, micro-proxy, control bus). Coordination of distributed systems leads to boiler plate patterns, and using Spring Cloud developers can quickly stand up services and applications that implement those patterns. They will work well in any distributed environment, including the developer’s own laptop, bare metal data centres, and managed platforms such as Cloud Foundry.
以上是Spring官方的介绍,大致的意思就是:SpringCloud为开发人员提供了快速构建分布式系统中的一些常见模式的工具(如配置管理、服务发现、断路器、智能路由、微代理、控制总线)。分布式系统的协调能力导致了“锅炉板模式”,并且使用Spring Cloud能够让开发者通过这个模式快速的搭建服务和应用。它们将在任何分布式环境中工作,包括开发者自己的笔记本电脑、裸金属数据中心和云铸造等管理平台。
Boiler Plate Patterns可以理解为Spring Cloud为每一个微服务节点提供一种开发样板,业务开发人员按照样板结构去开发即可。一个优秀的架构师在做技术选型或编写底层框架时,时时刻刻都会考虑面向业务的开发人员会以何种方式去使用框架,有统一的样板或者模式来遵循是对于任何刚使用框架的开发者都是非常有价值的。
历史版本
| 英文 | 中文 | 终结版本 | boot大版本 | boot代表 |
| Angel | 安吉尔 | SR6 | 1.2.X | 1.2.8 |
| Brixton | 布里克斯顿 | SR7 | 1.3.X | 1.3.8 |
| Camden | 卡梅登 | SR7 | 1.4.X | 1.4.2 |
| Dalston | 达斯顿 | SR5 | 1.5.X | * |
| Edgware | 艾奇韦尔 | SR5 | 1.5.X | 1.5.19 |
| Finchley | 芬奇利 | SR2 | 2.0.X | 2.0.8 |
| Greenwich | 格林威治 | SR6 | 2.1.X | 2.1.2 |
| Hoxton | 霍克斯顿 | SR12 | 2.2.X | 2.2.6 [2.2.x, 2.3.x (Starting with SR5)] |
| 2020.0.4-aka Ilford | 埃福的 | GA | 2.5.7 | 2.5.7(0.5版本) 2.4.x, 2.5.x (Starting with 2020.0.3) |
| 2021.0.0 aka Jubilee | 朱比利 | GA | 2.6.x 2.6.1 | GA 2.6.x 2.6.1,spring版本5.3.13 |
版本说明
- SNAPSHOT :快照版,可以稳定使用,且仍在继续改进版本。
- PRE:preview edition,预览版,内部测试版. 主要是给开发人员和测试人员测试和找BUG用的,不建议使用;
- RC:Release Candidate,发行候选版本,基本不再加入新的功能,主要修复bug。是最终发布成正式版的前一个版本,将bug修改完就可以发布成正式版了。
- SR:Service Release,表示bug修复。修正版或更新版,修正了正式版推出后发现的Bug。
- GA:General Availability,正式发布的版本,官方开始推荐广泛使用,国外有的用GA来表示release版本。
SpringCloud 2021最新版本
SpringCloud官网截止到现在,最新版本更新到SpringCloud 2021.0.1 ,前段时间才刚发布,这是正版本发布版本,兼容 Spring Boot 2.6.x 。

从上面图我们可以看到,Spring Cloud有如此多的模块:
- Spring Cloud Azure : 微软提供的一套微服务实现。
- Spring Cloud Alibaba : 阿里提供的一套微服务实现。
- Spring Cloud for Amazon Web Services:亚马逊提供的一套微服务实现。
- Spring Cloud Bus :消息总线
- Spring Cloud Circuit Breaker : 断路器
- Spring Cloud CLI:命令行工具
- Spring Cloud for Cloud Foundry:VMware公司提供的一套微服务实现。
- Spring Cloud - Cloud Foundry Service Broker:快速构建Cloud Foundry服务实例的框架。
- Spring Cloud Cluster
- Spring Cloud Commons:SpringCloud的公共包(包含了commons、context、loadbalancer),定义了服务注册、服务发现等。
- Spring Cloud Config :配置中心
- Spring Cloud Connectors
- Spring Cloud Consul
- Spring Cloud Contract
- Spring Cloud Function
- Spring Cloud Gateway:Spring Cloud官方实现的网关。
- Spring Cloud GCP: 谷歌提供的一套微服务实现。
- Spring Cloud Kubernetes
- Spring Cloud Netflix:奈飞提供的一套云服务实现。(最早)
- Spring Cloud Open Service Broker
- Spring Cloud OpenFeign : Spring Cloud维护的Rest 客户端。
- Spring Cloud Pipelines
- Spring Cloud Schema Registry
- Spring Cloud Security
- Spring Cloud Skipper
- Spring Cloud Sleuth
- Spring Cloud Stream
- Spring Cloud Stream Applications
- Spring Cloud Task
- Spring Cloud Task App Starters
- Spring Cloud Vault
- Spring Cloud Zookeeper
- Spring Cloud App Broker
Netflix公司是目前微服务落地中最成功的公司,它开源了诸如Eureka、Hystrix、Zuul、Feign、Ribbon等等广大开发者所知微服务套件,统称为Netflix OSS;
在当时Netflix OSS成为微服务组件上事实的标准;但是微服务兴起不久,也就是在 2018 年前后Netflix公司宣布其核心组件Hystrix、Ribbon、Zuul、Eureka等进入停更状态,不再进行新特性开发,只修 BUG.
Netflix停更直接影响了Spring Cloud项目的发展路线,Spring 官方不得不采取了应对措施,在 SpringOne 2019 大会中,Spring Cloud宣布 Spring Cloud Netflix 项目进入维护模式,并在 2020 年移除相关的Netflix OSS组件。
Alibaba公司也紧随潮流。基于之前开源的Dubbo,陆陆续续又开源了Nacos、Sentinel、Seata、RocketMQ等。在我们国内也是广泛使用。
至于其他公司实现的微服务,在我们国内使用的不多。所以在之后我们将以Netflix+Spring 官方 和Alibaba两套微服务来展开学习。
01-SpringCloud介绍的更多相关文章
- 《The Linux Command Line》 读书笔记01 基本命令介绍
<The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...
- 开源Math.NET基础数学类库使用(01)综合介绍
原文:[原创]开源Math.NET基础数学类库使用(01)综合介绍 开源Math.NET基础数学类库使用系列文章总目录: 1.开源.NET基础数学计算组件Math.NET(一)综合介绍 2. ...
- Nmap原理-01选项介绍
Nmap原理-01选项介绍 1.Nmap原理图 Nmap包含四项基本功能:主机发现/端口扫描/版本探测/操作系统探测.这四项功能之间存在大致的依赖关系,比如图片中的先后关系,除此之外,Nmap还提供规 ...
- java框架之SpringCloud(1)-微服务及SpringCloud介绍
微服务概述 是什么 业界大牛 Martin Fowler 这样描述微服务: 参考[微服务(Microservices)-微服务原作者Martin Flower博客翻译]. 下面是关于上述博客中的部分重 ...
- vue.js 2.0 官方文档学习笔记 —— 01. vue 介绍
这是我的vue.js 2.0的学习笔记,采取了将官方文档中的代码集中到一个文件的形式.目的是保存下来,方便自己查阅. !官方文档:https://cn.vuejs.org/v2/guide/ 01. ...
- 01.课程介绍 & 02.最小可行化产品MVP
01.课程介绍 02.最小可行化产品MVP 产品开发过程 最小化和可用之间找到一个平衡点
- 前端 ----- 01 -html介绍和head标签
01-html介绍和head标签 主要内容 web标准 浏览器介绍 开发工具介绍 HTML介绍 HTML颜色介绍 HTML规范 HTML结构详解 一.web标准 web准备介绍: w3c:万维网联 ...
- 先导篇:SpringCloud介绍篇
1.什么是SpringCloud Spring Cloud是一系列框架的有序集合.它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线.负载 ...
- 【原创】开源Math.NET基础数学类库使用(01)综合介绍
本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新 开源Math.NET基础数学类库使用总目录:[目录]开源Math.NET基础数学类库使用总目录 前言 ...
- Swift开发学习-01 Swift介绍
本教程是笔者在自学IOS/Swift知识的总结,适用于通过对Objictive C编程的运用并需要了解基于iOS程序的iPhone和iPad的程序员.做一个有bigger的’攻城狮‘,有尊严的工作,快 ...
随机推荐
- 企业CICD规模化落地浅析
本次分享的题目是<企业CICD规模化落地>,因此我们不会侧重讲解CICD是什么以及怎样做CICD,而是你已经知道怎样"玩转"CICD了,要如何在一个比较大的企业中规模化 ...
- JavaScripts之变量作用域提升问题(var、let、const)
变量提升(Hoisting) var: 使用var在函数或全局内任何地方声明变量相当于在其内部最顶上声明它,这种行为称为Hoisting(提升) 注意:变量赋值的位置不会改变 function fn( ...
- 【以太坊剖析】以太坊虚拟机(EVM)之基本定义
以太坊虚拟机(EVM) 以太坊虚拟机(Ethereum Virtual Machine,简称EVM)是一个基于栈的虚拟机,基于特定的环境数据,执行一系列的字节代码形式的指令,以修改系统状态.EVM目前 ...
- 一步一步搭建基于ffmpeg和sdl2的流媒体播放器
一. 背景: 一步一步从资料收集.技术选型.代码编写.性能优化,动手搭建一款支持rtsp.rtmp等常用流媒体格式的视频播放器,ffmpeg用于流媒体解码,sdl2用于视频画面渲染和声音播放. 二. ...
- Java流程控制02:Scanner进阶
Scanner进阶使用 import java.util.Scanner;public class Demo04 { public static void main(String[] args ...
- resp.getWriter().print(categoryList)、resp.getWriter().write(String)与new ObjectMapper().writeValue(resp.getOutputStream(),categoryList)的区别
前言:最近在复习原生的servlet的时候,对其输出流不理解,故总结一下: resp.getWriter().print(categoryList) 可以输出字符串,也可以输出对象,可能还有其他类型, ...
- 在zabbix中实现发送带有图片的邮件和微信告警
1 python实现在4.2版本zabbix发送带有图片的报警邮件 我们通常收到的报警,都是文字,是把动作中的消息内容当成了正文参数传给脚本,然后邮件或者微信进行接收,往往只能看到当前值,无法直观的获 ...
- Docker consul的容器服务更新与发现
Docker consul的容器服务更新与发现 目录 Docker consul的容器服务更新与发现 一.Consul简介 1. 服务注册与发现 2. consul概述 3. consul的两种模式 ...
- 踩坑系列-Java Calendar
Calendar是Java util包下的日期Api,其中获取月份是当前月份-1 public class Demo { public static void main(String[] args) ...
- 搭建 Nginx 服务
今日内容 上一篇测试 c出现问题 web 服务 部署 Nginx 内容详细 上一篇测试 NFS共享文件步骤 - 服务端 [root@backup ~]# yum install nfs-utils r ...