简介

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介绍的更多相关文章

  1. 《The Linux Command Line》 读书笔记01 基本命令介绍

    <The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...

  2. 开源Math.NET基础数学类库使用(01)综合介绍

    原文:[原创]开源Math.NET基础数学类库使用(01)综合介绍 开源Math.NET基础数学类库使用系列文章总目录:   1.开源.NET基础数学计算组件Math.NET(一)综合介绍    2. ...

  3. Nmap原理-01选项介绍

    Nmap原理-01选项介绍 1.Nmap原理图 Nmap包含四项基本功能:主机发现/端口扫描/版本探测/操作系统探测.这四项功能之间存在大致的依赖关系,比如图片中的先后关系,除此之外,Nmap还提供规 ...

  4. java框架之SpringCloud(1)-微服务及SpringCloud介绍

    微服务概述 是什么 业界大牛 Martin Fowler 这样描述微服务: 参考[微服务(Microservices)-微服务原作者Martin Flower博客翻译]. 下面是关于上述博客中的部分重 ...

  5. vue.js 2.0 官方文档学习笔记 —— 01. vue 介绍

    这是我的vue.js 2.0的学习笔记,采取了将官方文档中的代码集中到一个文件的形式.目的是保存下来,方便自己查阅. !官方文档:https://cn.vuejs.org/v2/guide/ 01. ...

  6. 01.课程介绍 & 02.最小可行化产品MVP

    01.课程介绍 02.最小可行化产品MVP 产品开发过程 最小化和可用之间找到一个平衡点

  7. 前端 ----- 01 -html介绍和head标签

    01-html介绍和head标签   主要内容 web标准 浏览器介绍 开发工具介绍 HTML介绍 HTML颜色介绍 HTML规范 HTML结构详解 一.web标准 web准备介绍: w3c:万维网联 ...

  8. 先导篇:SpringCloud介绍篇

    1.什么是SpringCloud Spring Cloud是一系列框架的有序集合.它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线.负载 ...

  9. 【原创】开源Math.NET基础数学类库使用(01)综合介绍

                   本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新  开源Math.NET基础数学类库使用总目录:[目录]开源Math.NET基础数学类库使用总目录 前言 ...

  10. Swift开发学习-01 Swift介绍

    本教程是笔者在自学IOS/Swift知识的总结,适用于通过对Objictive C编程的运用并需要了解基于iOS程序的iPhone和iPad的程序员.做一个有bigger的’攻城狮‘,有尊严的工作,快 ...

随机推荐

  1. 安卓开发常见Bug-setContentView(R.layout.....)报错

    这是安卓开发的常见错误,当你在引用或者复制别人的Layout xml文件时需要在AndroidManifest.xml中添加东西 需要将图中的activity android:name添加进去,否则是 ...

  2. ApacheCN Java 译文集 20210921 更新

    新增了五个教程: Java 设计模式最佳实践 零.前言 一.从面向对象到函数式编程 二.创建型模式 三.行为模式 四.结构模式 五.函数式模式 六.让我们开始反应式吧 七.反应式设计模式 八.应用架构 ...

  3. [源码解析] 模型并行分布式训练Megatron (2) --- 整体架构

    [源码解析] 模型并行分布式训练Megatron (2) --- 整体架构 目录 [源码解析] 模型并行分布式训练Megatron (2) --- 整体架构 0x00 摘要 0x01 启动 1.1 分 ...

  4. mac 下载MySQL后,需要这样打开

    1.打开mac终端 2.输入 export PATH=${PATH}:/usr/local/mysql/bin 3.输入mysql -u root -p 4输入密码

  5. C字符串倒置-中部对称

    问题如图 Code #include<stdio.h> #include<string.h> #define MAX_LENGTH 10//最大字符串长度 void inver ...

  6. Nodejs path对象

    很快Node就会迎来4.0的时代,届时将并入现有的iojs,所以先前写过的iojs入门系列直接更名为NodeJS入门. 本篇开始将逐个介绍Node的各主要模块,依循API文档走一遍,但会给出比API文 ...

  7. Java开发调试技巧及Eclipse快捷键使用方法

    1. 快捷键 syso 通过打印输出来调试,println可接受object型的参数,能输出任何类型 Syso输出的是黑色字体,代表的是Debug的信息 Syse,输出的是红色字体,代表错误的输出信息 ...

  8. 有手就行3——持续集成环境—maven、tomcat、安装和配置

    有手就行3--持续集成环境-maven.tomcat.安装 持续集成环境(5)-Maven安装和配置 持续集成环境(6)-Tomcat安装和配置 持续集成环境(5)-Maven安装和配置 在Jenki ...

  9. Pandas中Series与Dataframe的初始化

    (一)Series初始化 1.通过列表,index自动生成 se = pd.Series(['Tom', 'Nancy', 'Jack', 'Tony']) print(se) 2.通过列表,指定in ...

  10. netstat 竟然还能这么玩儿?

    一次摸鱼的机会,看到群里小伙伴问了一嘴 netstat -tnpl 这个命令是干啥的,这个命令用过很多,但是我其实也没有认真研究过,但是这是一个问题,我不能放过它,而且 netstat 这个命令我日常 ...