Spring Cloud Alibaba 生态学习
Spring Cloud Alibaba 核心组件:
Nacos(注册/配置中心): 是 Spring Cloud Alibaba 最重要的组件,它提供了一组简单易用的特性集,帮助我们快速实现动态服务发现、服务配置、服务元数据及流量管理,可以说没有 Nacos 就没有 Spring Cloud Alibaba。
Netflix Ribbon(负载均衡) :Netfilx Ribbon 是 Netflix 公司开源的一个负载均衡组件,属于客户端负载均衡器。目前 Ribbon 已被 Spring Cloud 官方技术生态整合,运行时以 SDK 形式内嵌到每一个微服务实例中,为微服务间通信提供负载均衡与高可用支持。
OpenFeign(服务间通信) :OpenFeign 是在 Netflix Feign 的基础上进行封装,结合原有 Spring MVC 的注解,对 Spring Cloud 微服务间 RESTful 通信提供了良好的支持。
Dubbo(RPC 调用) :作为 Alibaba 著名的 RPC 框架,提供了客户端/服务端结构的跨进程 RPC 二进制通信方案。
Spring Cloud Gateway(API 网关) :是 Spring 自己开发的新一代 API 网关产品。Spring Cloud Gateway 在保持了简单高效的同时,也拥有良好的扩展性,提供了动态路由、修改请求响应等高级特性。
Sentinel(系统保护) :以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 典型特点有:支持超高并发场景、内置实时监控、广泛的开源生态与完善的扩展机制,这一切使得我们可以在代价极小的前提下低侵入的整合各项系统保护功能。
Sleuth & Zipkin(链路追踪) :在 Spring Cloud 标准生态下内置了 Sleuth 这个组件,它通过扩展 Logging 日志的方式实现微服务的链路追踪,而 Zipkin 是推特的一个开源项目,它能收集各个服务实例上的链路追踪数据并可视化展现。
SkyWalking(APM 性能监控) :是国人吴晟(华为)开源的应用性能管理系统(APM)工具,使用 Java 语言开发, 提供了分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。相比 Sleuth & Zipkin 方案,SkyWalking 基于 Java Agent 技术可以从更多监控点获取数据,生成更详细的监控图表,无论是设计还是 UI 界面 SkyWalking 更为优秀。现已属于 Apache 旗下顶级开源项目。
Seata(分布式事务) :是开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。Seata 内置了 AT、TCC 与 Saga 模式实现不同场景的分布式事务,其中 AT 是 Seata 首选模式,通过自动生成反向 SQL 配合 TC 实现分布式事务的最终一致性。
RocketMQ(消息队列) :是一款分布式消息队列中间件,最初设计是为了满足阿里巴巴自身业务对异步消息传递的需要,经历过多次双 11 的考验,从可靠性到性能都能满足绝大多数系统对于异步消息可靠性投递的需求。在 3.X 版本后正式开源并捐献给 Apache,目前已孵化为 Apache 顶级项目。
版权声明: 本文为 InfoQ 作者【风翱】的原创文章。
原文链接:【http://xie.infoq.cn/article/a520d241e36a2f3893beed1fc】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论