一、介绍
Spring Cloud Alibaba 为分布式应用开发提供一站式解决方案。它包含开发分布式应用程序所需的所有组件,使您可以轻松地使用 Spring Cloud 开发应用程序。
使用Spring Cloud Alibaba,您只需添加一些注解和少量配置,即可将Spring Cloud应用连接到阿里巴巴的分布式解决方案,并通过阿里巴巴中间件构建分布式应用系统。
- 流量控制和服务降级:使用阿里巴巴哨兵进行流量控制、断路和系统自适应保护
- 服务注册与发现:实例可以注册到阿里巴巴Nacos,客户端可以使用Spring管理的bean来发现实例。通过 Spring Cloud Netflix 支持 Ribbon,客户端负载均衡器
- 分布式配置:使用阿里巴巴Nacos作为数据存储
- Event-driven:构建与 Spring Cloud Stream RocketMQ Binder连接的高度可扩展的事件驱动微服务
- 消息总线:使用 Spring Cloud Bus RocketMQ 链接分布式系统的节点
- 分布式事务:支持高性能、易用的分布式事务解决方案与Seata
- Dubbo RPC:通过Apache Dubbo RPC扩展Spring Cloud服务到服务调用的通信协议
二、环境搭建
查看cloud和springboot的对应关系
https://start.spring.io/actuator/info
查看cloud与alibaba的版本对应关系
https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E
2.1 导入依赖
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.3.12.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.7.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Hoxton.SR12</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>