Spring Cloud相关组件说明
1、Spring Cloud版本
现有Spring Cloud有两代实现,分为Spring Cloud Netflix和Spring Cloud Alibaba,由于SpringCloud Netflix版一些重要组件如注册中心Euraka、Ribbon已经不再迭代更新了,Spring Cloud Alibaba慢慢孵化出Spring Cloud Alibaba一套相关组件。
2、Spring Cloud Netflix
主要由:Eureka、Ribbon、Feign、Hystrix、Zuul|Gateway、Config等组件组成。
Eureka:服务注册与发现
Ribbon:负载均衡
Feign:服务与服务之间的调用,目前以及不迭代更新,可以使用OpenFeign
Hystrix:服务之间的熔断降级
Zuul|Gateway:服务网关,多个服务提供唯一的访问接口。Zuul不迭代更新,大多数项目使用Gateway
Spring Cloud Config:是最早的配置中心,可以使用Nacos取代它
3、Spring Cloud Alibaba
主要由:Nacos、Sentinel、Seata等组件组成。
Nacos:对服务注册、配置中心与负载均衡功能都整合进 Nacos,有图形化界面,简化了微服务架构的复杂度。Nacos理解为服务注册中心和配置中心的结合体。
Sentinel:服务保护组件也调整为 Sentinel,相较Hystrix功能更强大,使用也更加友好。把流量作为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。
Seata:阿里巴巴开源产品,一个易于使用的高性能微服务分布式事务解决方案。
RocketMQ:一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。
Dubbo:高性能 Java RPC 框架。类似于OpenFeign
Alibaba Cloud OSS: 阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。
Alibaba Cloud SMS: 覆盖全球的短信服务,友好、高效、智能的互联化通讯能力,帮助企业迅速搭建客户触达通道。
Alibaba Cloud SchedulerX: 阿里中间件团队开发的一款分布式任务调度产品,提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。
SchedulerX、SMS、OSS等主要是阿里云的商业化产品