超高性能

超高性能

Dubbo 被设计用于解决阿里巴巴超大规模的电商微服务集群实践,并在各个行业头部企业经过多年的十万、百万规模的微服务实践检验,因此,Dubbo 在通信性能、稳定性方面具有无可比拟的优势,非常适合构建近乎无限水平伸缩的微服务集群,这也是 Dubbo 从实践层面优于业界很多同类的产品的巨大优势。

高性能数据传输

Dubbo 内置支持 Dubbo2、Triple 两款高性能通信协议。其中

  • Dubbo2 是基于 TCP 传输协议之上构建的二进制私有 RPC 通信协议,是一款非常简单、紧凑、高效的通信协议。
  • Triple 是基于 HTTP/2 的新一代 RPC 通信协议,在网关穿透性、通用性以及 Streaming 通信上具备优势,Triple 完全兼容 gRPC 协议。

Dubbo TCP Protocol benchmark 性能指标

dubbo-rpc-protocol-benchmark

Triple benchmark 性能指标

dubbo-http2-protobuf-benchmark

了解更多

流式通信

构建可伸缩的微服务集群

业务增长带来了集群规模的快速增长,而集群规模的增长会对服务治理架构带来挑战:

  • 注册中心的存储容量瓶颈
  • 节点动态变化带来的地址推送与解析效率下降
  • 消费端存储大量网络地址的资源开销
  • 复杂的网络链接管理
  • 高峰期的流量无损上下线
  • 异常节点的自动节点管理

以上内容直接关系到微服务集群的稳定性,因此很容易成为影响集群和业务增长的瓶颈,集群规模越大,问题带来的影响面也就被进一步放大。很多开发者可能会想只有几个应用而已,当前不需要并不关心集群规模,但作为技术架构选型的关键因素之一,我们还是要充分考虑微服务集群未来的可伸缩性。并且基于对业界大量微服务架构和框架实现的调研,一些产品的性能瓶颈点可能很快就会到来(部分产品所能高效支持的瓶颈节点规模阈值都是比较低的,比如几十个应用、数百个节点)。

一份对比的 Dubbo、Spring Cloud、Go-Micro、Istio 在不同集群规模下的资源咋用 benchmark,比如模拟10个节点、100个节点、1000 个节点情况下的资源占用情况

Dubbo 的优势在于近乎无限水平扩容的集群规模,在阿里巴巴双十一场景万亿次调用的实践检验,通过以下内容了解 Dubbo 构建生产可用的、可伸缩的大规模微服务集群背后的原理:


最后修改 March 16, 2023: add admin docs (#2430) (c421994155)