作者 | 远云
三位一体
2020年底,阿里云提出了“三位一体”的理念,目标是希望将“自研技术”、“开源项目”、“商业产品”形成统一的技术体系,令技术的价值可以达到最大化。
阿里集团内部的 HSF 框架在经历了多年双十一流量洪峰的考验后,锻炼出了高性能和高可用的核心竞争力。而对于 Dubbo,作为国内外最受欢迎的服务治理框架之一,它的开源亲和性就不用再多说了。
Dubbo 3.0 作为三位一体架构的首推方案,在集团内被寄予厚望。它完美融合了内部 HSF 的特性,天然拥有高性能、高可用的核心能力,我们期望用它来解决内部落地问题,做到技术栈统一。目前在考拉已经大规模落地,未来也会在众多核心场景进行落地,并承载 618、双十一等复杂的业务场景。
Dubbo 3.0 带来的好处
在具体说明 Dubbo 3.0 的变化细节之前,先从两个方面说一说升级到了 Dubbo 3.0 能带来什么好处。
首先是,Dubbo 3.0 会着力提升大规模集群实践中的性能与稳定性,通过优化数据存储方式来降低单机资源损耗,并基于此保证超大规模集群的水平扩容的情况下集群的稳定性。同时,Dubbo 3.0 提出了柔性集群的概念,能够在异构体系下有效保证和提高全链路总体的可靠性和资源的利用率。
第二点是 Dubbo 3.0 代表着 Dubbo 全面拥抱云原生的里程碑。当前 Dubbo 在国内外有着基数巨大的用户群体,而随着云原生时代的到来,这些用户上云的需求越来越强烈。Dubbo 3.0 将提供一整套的解决方案、迁移路径与最佳实践,来帮助企业实现云原生转型,从而享受云原生带来的红利。
1、业务收益
那么站在业务应⽤的视角来看,如果升级到 Dubbo 3.0,能获得哪些具体的收益呢?
首先,在性能与资源利用率⽅面,Dubbo 3.0 能有效降低框架带来的额外资源消耗,从而⼤幅提升资源利用率。
从单机视⻆,Dubbo 3.0 能节省约 50% 的内存占⽤;从集群视角,Dubbo 3.0 能⽀持的集群实例规模以百万计,为未来更大规模的业务扩容打下基础;而 Dubbo 3.0 对 Reactive Stream 通信模型的支持,在⼀些业务场景下能带来整体吞吐量的⼤幅提升。
其次,Dubbo 3.0 给业务架构升级带来了更多的可能性。最直观的就是通信协议的升级,给业务架构带来了更多选择。
Dubbo 原来的协议其实在⼀定程度上束缚了微服务接⼊⽅式。举个例子,移动端、前端业务要接入 Dubbo 的后端服务,需要经过网关层的协议转换;再比如,Dubbo 只⽀持 request-response 模式的通信,这使得⼀些需要流式传输或反向通信的场景⽆法得到很好的支持。
最后,Dubbo 3.0 给业务侧的云原生升级带来了整体的解决方案。不论是底层基础设施升级带来的被动变化,还是业务为解决痛点问题进行的主动升级,当业务升级到云原生,Dubbo 3.0 通过给出云原生解决方案,可以帮助业务产品快速接入云原生。