微服务常见解决方案

功能

翻译

选择

Distributed/version configuration

分布式/版本化的配置与管理

Spring Cloud Config、Consul、Nacos、Zookeeper

Service registration and discovery

服务注册与发现

Eureka、Consul、Nacos、Zookeeper

Routing

路由

Zuul、Spring Cloud Geteway

Service to service calls

端到端的调用

RestTemplate、 Feign

Loading balancing

负载均衡

Ribbon

Circuit Breakers

断路器

Hystrix、Sentinel、Resilience4J

Global locks

全局锁

Spring Cloud Cluster(已迁移到Spring Integration)

Leadership election and cluster state

选举与集群状态管理

Spring Cloud Cluster(已迁移到Spring Integration)

Distributed messaging

分布式消息

Spring Cloud Stream+ Kafka/RabbitMQ/RocketMQ

Spring Cloud和Spring Cloud Alibaba

Spring Cloud 和 Spring Cloud Alibaba 都是针对微服务架构的解决方案,但它们之间有一些区别和联系。

  1. Spring Cloud

    • Spring Cloud 是 Spring 社区提供的一套微服务架构解决方案,它基于 Spring Boot 和 Spring Cloud 组件库,提供了一系列工具和框架,用于构建和管理分布式系统中的各种微服务。

    • Spring Cloud 提供了诸如服务注册与发现、服务调用、负载均衡、断路器、配置中心、消息总线等功能,以帮助开发人员构建和管理分布式系统。

  2. Spring Cloud Alibaba

    • Spring Cloud Alibaba 是阿里巴巴集团基于 Spring Cloud 体系的衍生项目,它在 Spring Cloud 的基础上,集成了阿里巴巴开源的一些微服务中间件和解决方案,如阿里云的服务注册中心 Nacos、分布式配置中心 Nacos、分布式消息队列 RocketMQ、分布式事务 Seata 等。

    • Spring Cloud Alibaba 的目标是为 Spring Cloud 用户提供更多丰富的微服务组件选择,并且与阿里云生态系统更好地集成,以满足企业级微服务架构的需求。

因此,Spring Cloud 和 Spring Cloud Alibaba 是两个独立但有联系的项目。Spring Cloud Alibaba 可以看作是在 Spring Cloud 的基础上,扩展了阿里云相关的一些特定功能和组件,为企业级微服务架构提供了更多选择和可能性。