初识SpringCloudAlibaba
简介
Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。
依托 Spring Cloud Alibaba,只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。
说功能明
-
服务限流降级:默认支持 Servlet,RestTemplate,Dubbo 和 RocketMQ 限流降级功能的介入,可以再运行时通过控制台实时修改限流降级规则,还支持查看限流降级的 Metrics 监控 ;解决服务异常问题
-
服务注册与发现:适配 SpringCloud 服务注册与发现标准,默认集成了 Ribbon 的支持 解决服务治理问题
-
分布式配置管理:支持分布式系统中的外部化配置,配置更改时自动刷新
-
消息驱动能力:基于 SpringCloud Stream 为微服务应用构建消息驱动能力 异步通信,解决组件间通信问题
-
阿里云对象存储:阿里云提供的海量,安全,低成本,高可靠的云存储服务,支持在任何应用,任何时间,任何地点存储和访问任意类型数据 分布式存储
-
分布式任务调度:提供秒级,精准,高可靠,高可用的定时 基于表达式 任务调度服务。同时提供分布式的任务执行模型,如网格任务。网格任务支持海量子任务均匀分配到所有 Worker 上执行
提供的组件
开源的免费组件:
-
Sentinel : 把流量作为切入点,从流量控制,熔断降级,系统负载保护等多个维度保护服务的
-
Nacos:一个更易于构建云原生应用的动态服务发现,配置管理和服务管理平台
-
RocketMQ:开源分布式消息系统,基于高可用分布式集群技术,提供低延时的,高可靠的消息发布与订阅服务,一般用于消息队列
-
Dubbo:高性能的 Java RPC 框架
-
Seata:易于使用的高性能微服务分布式事务解决方案
基于阿里云的商用组件:
-
Alibaba Cloud ACM :分布式架构环境中对应用配置进行集中管理和推送应用配置的中心产品
-
Alibaba Cloud OSS :阿里云对象存储
-
Alibaba Cloud SchedulerX :分布式任务调度,基于Cron表达式的三高 高可靠,高可用,高精度 定时任务调度服务
-
Alibaba Cloud SMS :覆盖全球的短信服务
对应版本
使用 SpringCloudAlibaba 的优势 部分摘自书籍
- Alibaba 开源组件在没有并入 SpringCloud 生态之前,就已经在各个公司中广泛应用,如 Dubbo ,但之前因为阿里巴巴突然停止更新了几年,甚至有公司对 Dubbo 进行了二开,产生了 Dubbox。
- 对大流量大并发天生的优势,我们知道 Alibaba 是电商起家,特别是在面对双十一这样的大促洪峰上,这些组件依然稳定可靠,所以说,相对于之前 Netflix 所提供的 cloud 组件来说,阿里巴巴所提供的组件似乎更适合于国内的应用场景。
后续
由于其中的生态繁杂,具体的各种组件,我会详细介绍,在本文中,只是简单的对 SpringCloudAlibaba 进行了一个概览。
本作品采用知识共享署名 4.0 国际许可协议进行许可。