目标:
了解SpringCloud
学习步骤:
1、SpringCloud 是什么? 2、SpringCloud 和 SpringBoot 的关系 3、SpringCloud 的特性是什么? 4、SpringCloud版本说明 5、SpringCloud的前景 6、SpringCloud升级后所使用的主流技术栈
一、SpringCloud 是什么?
不懂咱就上百度百科
Spring Cloud是一系列框架的有序集合。
SpringCloud,基于SpringBoot 提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。
SpringCloud 利用 SpringBoot的开发便利性,巧妙地简化了分布式系统基础设施的开发,SpringCloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理,服务发现,断路器,路由,微代理,事件总线,全局锁,决策竞选,分布式会话等等,它们都是可以使用 SpringBoot 的开发风格做到一键启动和部署。
SpringBoot 并没有重复造轮子,它只是将目前各家公司开发的比较成熟,经得起实际考验的服务框架组合起来,通过SpringBoot风格进行再次封装,屏蔽掉复杂的配置和实现原理,最终 给开发者留下一套简单,易部署,易维护的分布式系统开发工具包
SpringCloud 是分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶。
小总结:SpringCloud 的作用就是协调处理微服务,在开发人员构建微服务的过程中需要做如 服务发现注册 、配置中心 、消息总线 、负载均衡 、断路器 、数据监控 等操作,而 Spring Cloud 为我们提供了一套简易的编程模型,使我们能在 Spring Boot 的基础上轻松地实现微服务项目的构建。
SpringCloud = 分布式微服务架构的一站式解决方案,是多种微服务架构落地技术的集合体,俗称微服务全家桶。
二、SpringCloud 和 SpringBoot 的关系
SpringBoot 是专注于快速方便的开发单个 个体微服务,也就是 jar 包
SpringCloud 是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供:配置管理,服务发现,断路器,路由,微代理,事件总线,全局锁,决策竞选,分布式会话等等集成服务。
SpringBoot 可以离开 SpringCloud 独立使用,开发项目,但是SpringCloud 离不开 SpringBoot,属于依赖关系。
SpringBoot专注于快速,方便的开发单个 个体微服务,SpringCloud 关注全局的服务治理框架。
三、SpringCloud 的特性是什么?
Spring Cloud专注于提供良好的开箱即用经验的典型用例和可扩展性机制覆盖。 1、分布式/版本化配置
2、服务注册和发现
3、路由
4、service - to - service调用
5、负载均衡
6、断路器
7、分布式消息传递
四、SpringCloud版本说明
SpringCloud的版本倒是挺有趣的,它是以伦敦地铁站发行地铁的站点取的名字
- 第一代版本:Angle
- 第二代版本:Brixton
- 第三代版本:Camden
- 第四代版本:Edgware
- 第五代版本:Finchley
- 第六代版本:GreenWich
- 第七代版本:Hoxton
五、SpringCloud的前景
Spring Cloud对于中小型互联网公司来说是一种福音,因为这类公司往往没有实力或者没有足够的资金投入去开发自己的分布式系统基础设施. 使用Spring Cloud一站式解决方案能在从容应对业务发展的同时大大减少开发成本。 同时,随着近几年微服务架构和Docker容器概念的火爆,也会让Spring Cloud在未来越来越“云”化的软件开发风格中立有一席之地,尤其是在五花八门的分布式解决方案中提供了标准化的、全站式的技术方案,意义可能会堪比当年Servlet规范的诞生,有效推进服务端软件系统技术水平的进步
六、SpringCloud升级后所使用的主流技术栈
|