-
Eureka:注册中⼼
-
Nacos:注册中⼼、配置中⼼
-
Consul:注册中⼼、配置中⼼
-
Spring Cloud Config:配置中⼼
-
Feign/OpenFeign:RPC调⽤
-
Kong:服务⽹关
-
Zuul:服务⽹关
-
Spring Cloud Gateway:服务⽹关
-
Ribbon:负载均衡
-
Spring CLoud Sleuth:链路追踪
-
Zipkin:链路追踪
-
Seata:分布式事务
-
Dubbo:RPC调⽤
-
Sentinel:服务熔断
-
Hystrix:服务熔断
🌐 Spring Cloud核心组件全景图
1. 设计思路分析(创始人视角)
▸ 微服务核心问题矩阵:
问题领域 | 解决方案 | 设计哲学 |
---|---|---|
服务发现 | 注册中心模式 | "每个服务都是平等的公民" |
配置管理 | 环境隔离+版本控制 | "配置即代码" |
服务通信 | 声明式RPC | "像调用本地方法一样远程调用" |
▸ Spring Cloud设计原则:
// 典型Spring风格抽象
@EnableDiscoveryClient // 约定优于配置
public class MyApp {
@LoadBalanced // 关注点分离
RestTemplate template;
}
2. 🧩 核心组件详解
1. 服务注册与发现
-
Eureka:
# 服务端配置 eureka.server.enable-self-preservation=true # 客户端配置 eureka.client.service-url.defaultZone=http:/