Spring Cloud 阿里巴巴(https://sca.aliyun.com/en-us/)提供分布式应用开发一站式解决方案。它包含开发分布式应用程序所需的所有组件,使您可以轻松地使用 Spring Cloud 开发应用程序。
使用Spring Cloud Alibaba,您只需要添加一些注解和少量配置,即可将Spring Cloud应用连接到阿里巴巴的分布式解决方案中,并使用阿里巴巴中间件构建分布式应用系统。
特征
春云
-
流量控制与业务降级:使用阿里巴巴哨兵进行流量控制、断路和系统自适应保护
-
服务注册和发现:实例可以在阿里巴巴 Nacos 注册,客户端可以使用 Spring 管理的 Bean 发现实例。支持 Ribbon,通过 Spring Cloud Netflix 的客户端负载均衡器
-
分布式配置:使用阿里巴巴 Nacos 作为数据存储
-
事件驱动:构建高度可扩展的事件驱动微服务,连接Spring Cloud Stream RocketMQ Binder
-
消息总线:使用Spring Cloud Bus RocketMQ链接分布式系统的节点
-
分布式事务:支持Seata高性能易用的分布式事务解决方案
-
Dubbo RPC:通过 Apache Dubbo RPC 扩展 Spring Cloud 服务到服务调用的通信协议
Spring 启动
所有 Spring Boot Starter 都在阿里云 Spring Boot 项目中维护。
开始
最简单的入门方法是包含 Spring Cloud BOM,然后添加到应用程序的类路径中。如果您不想包含所有 Spring Cloud 阿里巴巴功能,您可以为您想要的功能添加单独的启动器。spring-cloud-alibaba-dependencies
pom 中的依赖关系:spring-cloud-alibaba-dependencies
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>{project-version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
如果您想将 Spring Boot Starters 用于阿里云服务,您应该将 Aliyun Spring Boot BOM 添加到您的pom.xml:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>aliyun-spring-boot-dependencies</artifactId>
<version>{project-version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
在阿里云上运行 Spring Boot/Cloud 应用程序
EDAS是一种用于应用托管和微服务管理的平台即服务(PaaS)服务,提供应用开发、部署、监控、运维等全栈解决方案。支持Apache Dubbo、Spring Cloud等微服务运行环境,帮助您轻松将应用迁移到阿里云。
按照本教程准备一个 Java Spring Boot/Cloud 应用程序,以便在 EDAS 中部署。
微服务引擎 (MSE) 是面向主流开源微服务框架 Spring Cloud 的微服务平台,包括治理中心和 Zookeeper、Eureka 和 Nacos 等全托管注册/配置中心。
您的应用可以享受产品提供的全面的微服务治理能力,而无需通过 javaagent 技术修改代码和配置。
MSE 还提供 zookeeper、Nacos 和 Eureka 等高可用、免运维的集群,通过托管注册/配置中心,完全兼容开源产品的标准接口。
按照本教程在 MSE 中构建 Nacos Engine for service registry。