Sping Cloud Alibaba

1. 主要功能

  • 服务限流降级

  • 服务注册与发现

  • 分布式配置管理

  • 消息驱动能力

  • 分布式事务

    Spring Cloud Alibaba 使用 @GlobalTransactional 注解,高效并且零入侵地解决分布式事务问题。

2. 主要组件

  • Sentinel
    Sentinel 把流量作为切入点,从流量控制、熔断降级、系统负载等多个维度保障服务的稳定性。Sentinel 主要分为两部分,客户端在我们的程序中集成,控制台基于 Spring Boot 开发,打包后直接运行。利用 Sertinel 流量控制功能可以对网关、服务进行过载保护,另一个核心功能是熔断降级,与 Hystrix 一致。

  • Nacos
    Nacos 是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。主要功能有注册中心配置中心Nacos 可以代替 Eureka 和 Apollo

  • RocketMQ
    分布式消息系统,基于高可用分布式集群技术,提供低延时、高可靠的消息发布与订阅服务。使用消息队列可以让服务之间更加解耦,还可以进行流量削峰,还可以用事务消息来实现分布式事务

  • Dubbo
    Java RPC 框架,Spring Cloud Alibaba 体系中,服务之间的通信可以使用 Dubbo 进行远程调用。Rest 的优势:通用性强、无语言限制、调试方便,但一般都是 JSON 格式,报文较大,Dubbo 是二进制传输,性能更好。Spring Cloud Alibaba 中可以将 Dubbo 和 Feign 结合使用,即服务可以暴露 Dubbo 协议,也可以暴露 Rest 协议,调用方选择对应的协议进行调用,对于性能要求高的使用 Dubbo,其它的使用 Rest。

  • Seata
    分布式事务解决方案,提供了 AT、TCC 等事务模式。

3. 技术选型推荐

  • 服务注册与发现:Nacos
  • 服务熔断限流:Sentinel
  • 服务通信调用:Feign
  • 配置中心:Nacos
  • 服务网关:Spring Cloud Gateway
  • 分布式事务:Seata
  • 消息队列:RocketMQ
  • 调用链监控:Sleuth+Zipkin
  • 分布式任务调度:XXL-JOB
请作者喝瓶肥宅快乐水