什么是Spring Cloud
官网地址 https://spring.io/projects/spring-cloud
Spring Cloud是一套规范,而Spring Cloud Netflix、Spring Cloud Alibaba是Spring Cloud规范的实现
Spring Cloud把一些比较优秀的解决微服务架构中常见问题的开源框架基于Spring Cloud规范进行了整合,通过Spring Boot框架进行再次封装后屏蔽掉了复杂的配置,提供开箱即用的开发体验
Spring Cloud提供了一些可以让开发者快速构建微服务应用的工具,解决以下问题:
- 分布式版本化管理
- 服务注册与发现
- 服务路由
- 服务调用
- 负载均衡
- 断路器
- 全局锁
- Leader选举及集群状态
- 分布式消息
Spring Cloud版本简介
Spring Cloud是一套整合了各大公司开源技术的规范,而开源技术的版本发布是由各个公司维护,每个子项目都维护了自己的发布版本号,所以采用London地铁站的名字根据字母表的顺序表结合对应版本的时间顺序来定义一个大版本
Spring Cloud所有子项目都依赖Spring Boot框架,所以Spring Boot框架的版本号和Spring Cloud的版本号之间也存在依赖及兼容的关系。
Spring Cloud规范下的实现
Spring Cloud生态下服务治理的解决方案主要有两个:Spring Cloud Netflix和Spring Cloud Alibaba。这两个解决方案分别针对Nteflix OSS及Alibaba的服务治理体系基于Spring Cloud规范做的整合
Spring Cloud Netflix
为微服务架构下的服务治理提供解决方案,包括以下组件:
- Eureka:服务注册与发现
- Zuul:服务网管
- Ribbon:负载均衡
- Feign:远程服务的客户端代理
- Hystrix:断路器,提供服务熔断和限流功能
- Hystrix Dashboard:监控面板
- Turbine:将各个服务实力上的Hystrix监控信息进行统一聚合
Spring Cloud Netflix相关组件已经进入维护模式(Hystrix、Ribbon、Zuul),停止新的功能更新.
Spring Cloud Alibaba
为微服务开发提供一站式的解决方案,通过Spring Cloud编程模型轻松地解决微服务架构下的各类技术问题
包含以下组件:
- Sentinel:流量控制和服务降级
- Nacos:服务注册与发现
- Nacos:分布式配置中心
- RocketMQ:消息驱动
- Seate:分布式事务
- Dubbo:RPC通信
- OSS:阿里云对象存储(非开源,阿里云产品收费)
Spring Cloud Alibaba 的优势
- Alibaba的开源组件已经在各大公司广泛应用,可以很轻松地集成到Spring Cloud生态使得开发者能够很轻松地实现技术整合及迁移
- Alibaba的开源组件经历过数次双11也被大规模应用过,在服务指令和处理高并发的能力上有天然的优势
Comments | 0 条评论