Spring Cloud Alibaba
Spring Cloud Alibaba 在 Spring Cloud 编程模型上集成 Nacos、Sentinel、Seata、RocketMQ 等组件,为微服务提供服务发现、配置管理、流量治理、分布式事务和消息能力。
它不是一套可任意混搭版本的 Starter 集合。Spring Cloud Alibaba、Spring Cloud、Spring Boot 以及各中间件服务端之间存在明确兼容矩阵,应使用 BOM 统一依赖版本。
能力边界
| 问题 | 组件 | 主要职责 |
|---|---|---|
| 服务实例在哪里 | Nacos Discovery | 注册、发现、健康状态和实例元数据 |
| 配置如何集中管理 | Nacos Config | 配置存储、监听、环境隔离与动态刷新 |
| 流量异常如何保护服务 | Sentinel | 限流、并发控制、熔断降级和系统保护 |
| 跨服务事务如何协调 | Seata | AT、XA、TCC、Saga 等分布式事务模式 |
这些组件不能代替完整的可观测性、安全和交付体系。日志见日志平台,调用链见SkyWalking。
依赖管理
xml
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>示例不固定具体版本号,避免复制后形成不兼容组合。版本选择见版本演进与升级。
文档入口
| 文档 | 内容 |
|---|---|
| Nacos | 服务发现、配置导入、Namespace、Group、健康与集群边界 |
| Seata | TC/TM/RM、AT/XA/TCC/Saga、幂等与事务边界 |
| Sentinel | 资源、Slot Chain、限流、熔断、隔离与规则持久化 |
| 版本演进与升级 | 版本矩阵、Ribbon/Bootstrap 等旧写法迁移 |