《springcloud超级入门》Spring Cloud是什么?Spring Cloud版本介绍《二》
Spring cloud是一系列框架的有序集合。它利用 Spring Boot 的开发便利性,巧妙地简化了分布式系统基础设施的开发,如服务注册、服务发现、配置中心、消息总线、负载均衡、断路器、数据监控等,这些都可以用 Spring Boot 的开发风格做到一键启动和部署。
通俗地讲,Spring Cloud 就是用于构建微服务开发和治理的框架集合(并不是具体的一个框架),主要贡献来自 Netflix OSS。
Spring Cloud 模块介绍
Spring Cloud 模块的相关介绍如下:
- Eureka:服务注册中心,用于服务管理。
- Ribbon:基于客户端的负载均衡组件。
- Hystrix:容错框架,能够防止服务的雪崩效应。
- Feign:Web 服务客户端,能够简化 HTTP 接口的调用。
- Zuul:API 网关,提供路由转发、请求过滤等功能。
- Config:分布式配置管理。
- Sleuth:服务跟踪。
- Stream:构建消息驱动的微服务应用程序的框架。
- Bus:消息代理的集群消息总线。
除了上述模块,还有 Cli、Task等。教程中只介绍一些常用的模块。
Spring Cloud 是一个非常好的框架集合,它包含的功能模块非常多,不可能一一讲解到,凡是在教程中出现的模块都是真实开发中用得到的。
Spring Cloud 版本介绍
相信大家跟笔者一样,在第一次访问 Spring Cloud 官网时一定会有一个疑惑那就是版本太多了,到底哪个是稳定版本?哪个才是自己需要的版本?接下来就给大家简单介绍一下版本的问题。
访问官网 https://projects.spring.io/spring-cloud/#learn 可以看到网页右侧的版本列表,如图 1 所示。
图 1 Spring Cloud版本
从图 1 中可以看到 Spring Cloud 不是像别的项目那样,版本号采用 1.1、1.2、1.3 这种的格式。因为 Spring Cloud 是一个拥有诸多子项目的大型综合项目,可以说是对微服务架构解决方案的综合套件组件,其中包含的各个子项目都独立进行着内容的迭代与更新,各自维护着自己的发布版本号。
至于怎么选择适合自己的版本,笔者认为,大家可以在接触的时候直接选最新的稳定版本。新版本中的 Bug 肯定要少,并且更稳定。
本教程的案例都是基于 Finchley SR2 进行讲解的。不同的版本有不同的功能,对应的每个子模块的版本也不一样,那么如何知道每个大版本下面具体的子模块是什么版本呢?
答案就在官网的首页上面,在页面的最下方有一个表格(见表 1 ),通过这个表格我们可以清楚地知道 Finchley SR2 对应的 Spring Boot 版本是 2.0.6.RELEASE,Spring-Cloud-Bus 是 2.0.0.RELEASE。
表 1 Spring Cloud版本列表
Component | Edgware.SR5 | Finchley.SR2 | Finchley.BUILD-SNAPSHOT |
---|---|---|---|
spring-cloud-aws | 1.2.3RELEASE | 2.0.1.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-bus | 1.3.3.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-cli | 1.4.1.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-commons | 1.3.5.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-contract | 1.2.6.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-config | 1.4.5.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-netflix | 1.4.6.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-security | 1.2.3.RELEASE | 2.0.1.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-cloudfoundry | 1.1.2.RELEASE | 2.0.1.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-consul | 1.3.5.RELEASE | 2.0.1.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-sleuth | 1.3.5.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-stream | Ditmars.SR4 | Elmhurst.SRI | Elmhurst. BUILD-SNAPSHOT |
spring-cloud-zookeeper | 1.2.2.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-boot | 1.5.16.RELEASE | 2.0.6.RELEASE | 2.0.7.BUILD-SNAPSHOT |
spring-cloud-task | 1.2.3.RELEASE | 2.0.0.RELEASE | 2.0.1.BUILD-SNAPSHOT |
spring-cloud-vault | 1.1.2.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
spring-cloud-gateway | 1.0.2.RELEASE | 2.0.2.RELEASE | 2.0.2.BUILD-SNAPSHOT |
上一篇 微服务的概念和优缺点《一》
下一篇介绍 Spring Cloud和Dubbo的区别及各自的优缺点
《springcloud超级入门》Spring Cloud是什么?Spring Cloud版本介绍《二》相关推荐
- 《springcloud超级入门》Spring Cloud和Dubbo的区别及各自的优缺点《三》
了解为什么需要微服务.最初的服务化解决方案是给相同服务提供一个统一的域名,然后服务调用者向这个域发送 HTTP 请求,由 Nginx 负责请求的分发和跳转. 这种架构存在很多问题:Nginx 作为中间 ...
- 《SpringCloud超级入门》Spring Boot Starter的介绍及使用《七》
目录 Spring Boot Starter项目创建 自动创建客户端 使用 Starter 使用注解开启 Starter 自动构建 使用配置开启 Starter 自动构建 配置 Starter 内容提 ...
- 《SpringCloud超级入门》Spring Cloud Eureka是什么?《八》
Spring cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 做了二次封装,主要负责实现微服务架构中的服务治理功能. S ...
- 《SpringCloud超级入门》Eureka自我保护模式和InstanceID的配置《十四》
关闭自我保护 保护模式主要在一组客户端和 Eureka Server 之间存在网络分区场景时使用.一旦进入保护模式,Eureka Server 将会尝试保护其服务的注册表中的信息,不再删除服务注册表中 ...
- 《SpringCloud超级入门》使用Eureka编写服务消费者《十一》
我们先从 Nginx 说起,了解为什么需要微服务.最初的服务化解决方案是给相同服务提供一个统一的域名,然后服务调用者向这个域发送 HTTP 请求,由 Nginx 负责请求的分发和跳转. 这种架构存在很 ...
- 《springcloud超级入门》Spring Cloud开发环境的准备和Lombok安装步骤《四》
开发环境的准备主要涉及三个方面:JDK.Maven.Spring Tools 4 for Eclipse. 1. JDK JDK 的版本用 1.8 即可,环境变量大家自行去配置.配置好环境变量,在命令 ...
- 《SpringCloud超级入门》Spring Boot项目搭建步骤(超详细)《六》
目录 编写第一个 REST 接口 读取配置文件 profiles 多环境配置 热部署 actuator 监控 自定义 actuator 端点 统一异常处理 异步执行 随机端口 编译打包 在 Sprin ...
- 《springcloud超级入门》Spring Boot简介《五》
Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是简化新 Spring 应用的初始搭建以及开发过程.该框架使用了特定的方式进行配置,从而使开发人员不再需要定义样板化的配置. ...
- 《SpringCloud超级入门》使用Eureka编写服务提供者《十》
创建项目注册到 Eureka 将一个服务提供者 eureka-client-user-service 注册到 Eureka 中,并提供一个接口给其他服务调用. 创建一个 Maven 项目,在 pom. ...
最新文章
- overflow超出显示_[CSS]text-overflow: ellipsis;什么时候可能不生效?
- 每日一皮:我靠,这个分枝真的merge回主干了!
- Win7x64中使用VS调试WEB项目报“ORA-06413: 连接未打开”错误解决方法
- Chapter 7:Statistical-Model-Based Methods
- Win7 64位下配置jboss7
- 跳槽换工作的最佳时机,985硕士的人生总结
- 交换机 路由器和集线器的区别
- Cookie 和 Session机制具体解释
- C++ static、const和static const类型成员变量声明及其初始化
- ELK根据服务类型收集多个容器数据
- C++中指针优点与线程中指针变量访问
- 基于51单片机的避障小车
- mysql对象资源管理器在哪里_SQL server2008-对象资源管理器-数据库
- 塔防游戏路点---编辑器脚本设计
- 区块链最好的编程语言是什么?
- 掌握这几点 让你快速写出优质电影解说文案!
- 分布式认知工业互联网赋能工业企业数字化转型
- Log4j simple example
- android应用常见错误
- javascript setTimeout 参数最大值问题和递归调用
热门文章
- python 英语词频统计软件_Python实现统计英文文章词频的方法分析
- python深度神经网络算法_02.深度神经网络算法之Python基础与数据分析
- failed to open log file_C++中glog源码剖析以及如何设计一个高效 log模块
- python不能卸载原因_linux上python卸载不了是什么原因?
- c++程序设计_基于proteus的51单片机开发实例30-模块化程序设计
- 电脑公司win11旗舰版32位镜像v2021.07
- 猎豹浏览器小号窗口怎么打开 小号窗口打开方法简述
- Win11控制面板里面怎么找到系统安全?
- 抓包工具,知道手机app上面使用的接口是哪个
- navicat运行db文件_使用 YAML 文件配置 Jenkins 流水线