微服务架构 Microservice Architecture
服务注册与发现(Service Registry & Discover)
- Nacos(Spring Cloud Alibaba)
- Eureka(Netflix,已逐步淘汰)
- Consul(支持多数据中心)
- Zookeeper(CP 系统,适合强一致性场景)
配置中心(Configuration Center)
- Nacos(一体化方案:服务发现 + 配置中心)
- Spring Cloud Config(需配合 Git/SVN)
- Apollo(携程开源,支持多环境配置)
服务通信(Service Communication)
-
REST API:
- Feign(声明式 HTTP 客户端,集成负载均衡)
- RestTemplate(Spring 旧版,逐步被 WebClient 替代)
-
RPC:
- Dubbo(高性能,适合内部服务调用)
- gRPC(跨语言,基于 HTTP/2)
异步消息(Message Queue)
- RocketMQ(阿里开源,支持事务消息)
- Kafka(高吞吐,适合日志、大数据场景)
- RabbitMQ(轻量级,支持复杂路由)
负载均衡(Load Balancing)
-
客户端负载均衡:
- Ribbon(Netflix,已逐步淘汰)
- Spring Cloud LoadBalancer(官方替代方案)
-
服务端负载均衡:
- Nginx(网关层负载均衡)
- Kubernetes Service(云原生场景)
熔断与限流(Circuit Breaker & Rate Limiting)
- Hystrix(Netflix,已逐步淘汰)
- Resilience4j(Spring Cloud Alibaba)
- Sentinel(阿里巴巴)
API 网关(API Gateway)
- Spring Cloud Gateway(官方推荐,非阻塞式)
- Zuul(Netflix,阻塞式,已淘汰)
- Kong(基于 Nginx,插件丰富)
分布式事务(Distributed Transaction)
- Seata(阿里开源,支持 AT/TCC/SAGA 模式)
- 本地消息表(最终一致性)
- Saga 模式(通过事件补偿)
链路追踪(Distributed Tracing)
- Sleuth + Zipkin(Spring Cloud 生态)
- SkyWalking(国产开源,支持拓扑图)
- Jaeger(Uber 开源,云原生友好)
监控与告警(Monitoring & Alerting)
- Prometheus + Grafana(指标采集 + 可视化)
- ELK Stack(日志分析:Elasticsearch + Logstash + Kibana)
- Spring Boot Actuator(暴露健康检查端点)
容器化与编排(Containerization & Orchestration)
- Docker:打包服务为镜像。
- Kubernetes:自动化部署、扩缩容。
- Helm:K8s 应用包管理工具。 Ï