springcloudalibaba简介
Spring Cloud Alibaba
Spring Cloud Alibaba 致⼒于提供微服务开发的⼀站式解决⽅案。此项⽬包含开发分布式应⽤微服务的必需组件,⽅便开发者通过 Spring Cloud 编程模型轻松使⽤这些组件来开发分布式应⽤服务。
主要功能
服务限流降级:默认⽀持 WebServlet、WebFlux, OpenFeign、RestTemplate、Spring Cloud Gateway, Zuul, Dubbo 和 RocketMQ 限流降级功能的接⼊,可以在运⾏时通过控制台实时修改限流降级规则,还⽀持查看限流降级 Metrics 监控。
服务注册与发现:适配 Spring Cloud 服务注册与发现标准,默认集成了 Ribbon 的⽀持。
分布式配置管理:⽀持分布式系统中的外部化配置,配置更改时⾃动刷新。
消息驱动能⼒:基于 Spring Cloud Stream 为微服务应⽤构建消息驱动能⼒。
分布式事务:使⽤ @GlobalTransactional 注解,⾼效并且对业务零侵⼊地解决分布式事务问题。。
阿⾥云对象存储:阿⾥云提供的海量、安全、低成本、⾼可靠的云存储服务。⽀持在任何应⽤、任何时间、任何地点存储和访问任意类型的数据。
分布式任务调度:提供秒级、精准、⾼可靠、⾼可⽤的定时(基于 Cron 表达式)任务调度服务。同时提供分布式的任务执⾏模型,如⽹格任务。⽹格任务⽀持海量⼦任务均匀分配到所有 Worker(schedulerx-client)上执⾏。
阿⾥云短信服务:覆盖全球的短信服务,友好、⾼效、智能的互联化通讯能⼒,帮助企业迅速搭建客户触达通道。
组件
Sentinel:把流量作为切⼊点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。
Nacos:⼀个更易于构建云原⽣应⽤的动态服务发现、配置管理和服务管理平台。
RocketMQ:⼀款开源的分布式消息系统,基于⾼可⽤分布式集技术,提供低延时的、⾼可靠的消息发布与订阅服务。
Dubbo:Apache Dubbo™ 是⼀款⾼性能 Java RPC 框架。
Seata:阿⾥巴巴开源产品,⼀个易于使⽤的⾼性能微服务分布式事务解决⽅案。
Alibaba Cloud ACM:⼀款在分布式架构环境中对应⽤配置进⾏集中管理和推送的应⽤配置中⼼产品。
Alibaba Cloud OSS: 阿⾥云对象存储服务(Object Storage Service,简称 OSS),是阿⾥云提供的海量、安全、低成本、⾼可靠的云存储服务。您可以在任何应⽤、任何时间、任何地点存储和访问任意类型的数据。
Alibaba Cloud SchedulerX: 阿⾥中间件团队开发的⼀款分布式任务调度产品,提供秒级、精准、⾼可靠、⾼可⽤的定时(基于 Cron 表达式)任务调度服务。
Alibaba Cloud SMS: 覆盖全球的短信服务,友好、⾼效、智能的互联化通讯能⼒,帮助企业迅速搭建客户触达通道。
如何使⽤
如何引⼊依赖
如果需要使⽤已发布的版本,在 dependencyManagement 中添加如下配置。
<dependencyManagement>
<dependencies>
<dependency>
分布式和微服务的关系
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.1.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
然后在 dependencies 中添加⾃⼰所需使⽤的依赖即可使⽤。
版本管理规范
项⽬的版本号格式为 x.x.x 的形式,其中 x 的数值类型为数字,从 0 开始取值,且不限于 0~9 这个范围。项⽬处于孵化器阶段时,第⼀位版本号固定使⽤ 0,即版本号为 0.x.x 的格式。
由于 Spring Boot 1 和 Spring Boot 2 在 Actuator 模块的接⼝和注解有很⼤的变更,且 spring-cloud-commons 从 1.x.x 版本升级到 2.0.0 版本也有较⼤的变更,因此我们采取跟 SpringBoot 版本号⼀致的版本:
1.5.x 版本适⽤于 Spring Boot 1.5.x
2.0.x 版本适⽤于 Spring Boot 2.0.x
2.1.x 版本适⽤于 Spring Boot 2.1.x
Spring Boot Spring Cloud Spring Cloud Alibaba
2.1.x Greenwich0.9.x
2.0.x Finchley0.2.x
1.5.x Edgware0.1.x
Spring Boot Spring Cloud Spring Cloud Alibaba
1.5.x Dalston0.1.x
现状
之前spring cloud alibaba ⼀直处于⼀个孵化状态。看名字就可以看出来Spring Cloud 有着密切的关系。2019 ⽉ 7 ⽉ 24 ⽇,Spring 官⽅宣布 Spring Cloud Alibaba 毕业,仓库迁移⾄ Alibaba Github OSS 下。这意味着 Spring Cloud Alibaba 是国内⾸个进⼊ Spring 社区的开源项⽬。
2018 年 7 ⽉,正式开源,进⼊孵化器。
2018 年 10 ⽉,发布开源后的第⼀个版本 0.1.0 & 0.2.0 (适配 Spring Cloud Edgware & Finchley ),包含 Nacos Config, Nacos Discovery、 Sentinel 以及 OSS 4 个组件。
2018 年 12 ⽉,发布第⼆个版本 0.1.1 & 0.2.1,新增 Spring Cloud Stream RocketMQ Binder 和 Spring Cloud Bus RocketMQ 组件。
2019 年 4 ⽉,发布 Preview Release 版本 0.9.0, 0.1.2 & 0.2.2 (⾸次适配 Spring Cloud Greenwich ),新增 Dubbo Spring Cloud、Seata 组件。颠覆性地使⽤ Spring Cloud 客户端调⽤ Dubbo 服务
2019 年 7 ⽉,Spring Cloud 官⽅宣布 Spring Cloud Alibaba 毕业。
2019 ⽉ 8 ⽉,发布毕业后的第⼀个版本 1.5.0, 2.0.0 & 2.1.0。新增 spring-cloud-alibaba-sentinel-gateway 模块以完善 Sentinel 对Spring Cloud 体系 Gateway 的⽀持。
我们都知道 Spring Restful Api 的规范性是我们喜欢的,规范代表着通⽤。⽽dubbo⽬前看来性能的收益也是让⼤家能感受到的。⽽Spring Cloud Alibaba 的出现兼容这俩种微服务⽣态的优势。让鱼与熊掌不可兼得的情况提供了⼀个更好的⽅案。
个⼈觉得Spring Cloud Alibaba 为喜欢cloud、dubbo俩种微服务的整合提供了⼀个较好的⽅案。但是会让感觉商业⽓息有点浓烈。毕竟阿⾥也是主要是为了推⾃⼰的产品服务
如何喜欢可以关注分享本。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。