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的’攻城狮‘,有尊严的工作,快 ...
随机推荐
- rsync.sh
#!/bin/bash file1=`du -sm /var/www/vhosts/|awk '{print $1}'` ps=`ps -C rsync --no-header|wc -l` if [ ...
- .NET 7 预览版来啦,我升级体验了
听说.NET 7 来了,站长怎能不尝鲜呢,在除夕当天将体验情况简单汇报下,然后迎新春喽: 本文目录 .NET 7 详情(Proposed .NET 7 Breaking Changes #7131) ...
- Programiz 中文系列教程·翻译完成
原文:Programiz 协议:CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远. 在线阅读 ApacheCN 学习资源 目录 Programiz C ...
- 使用Xamarin开发移动应用示例——数独游戏(八)使用MVVM实现完成游戏列表页面
项目代码可以从Github下载:https://github.com/zhenl/ZL.Shudu .代码随项目进度更新. 前面我们已经完成了游戏的大部分功能,玩家可以玩预制的数独游戏,也可以自己添加 ...
- ABC231H(二分图最小权边覆盖)
首先将行列分别抽象成 \(h, w\) 个点,每个格子视作连接两个点的一条边,那么问题就转化为了二分图最小权边覆盖问题. 考虑最后答案形如:若干组互不相交的匹配加上其他点连接到匹配内. 于此同时,不在 ...
- JAVA多线程学习八-多个线程之间共享数据的方式
多个线程访问共享对象和数据的方式 如果每个线程执行的代码相同,可以使用同一个Runnable对象,这个Runnable对象中有那个共享数据,例如,买票系统就可以这么做. 如果每个线程执行的代码不同,这 ...
- XML 中如何输入回车换行
XML 中如何输入回车换行? XML 特殊字符: 下面的字符在 [XML]中被定义为 空白(whitespace)字符: 空格 ( ) Tab ( ) 回车 ( ) 换行 ( ) XML 中如何输入回 ...
- 异步回调实现- Guava Retryer
为什么要使用重试利器Retryer 在实际开发中我们经常会遇到需要轮询查询一个接果,实现轮询的方式有很多种,我们经常要写许多代码,有时还会怕写出的代码有bug,如果已经有轮子了,我们就没必要重复造轮子 ...
- vue单页面应用打包后相对路径、绝对路径相关问题
原文链接: vue单页面应用打包后相对路径.绝对路径相关问题展开 在项目开发过程中,在部署过程中,用到了反向代理,这就要求前端代码中不能使用绝对路径.但是我们知道,一般情况下,通过web ...
- autorelease基本使用
1.autorelease基本概念 autorelease是一种支持引用计数的内存管理方式,只要给对象发送一条autorelease消息,会将对象放到一个自动释放池中,当自动释放池被销毁时,会对池子里 ...