Triple 协议
协议描述
Triple 是 Dubbo3 提出的一个基于 HTTP2 的开放协议,旨在解决 Dubbo2 私有协议带来的互操作性问题。与原有的 Dubbo2 协议相比,Triple 具有以下优势
- 原生协议和 gRPC 协议之间的互操作性。开放 gRPC 生态,降低从 gRPC 迁移到 Dubbo 的成本。
- 增强多语言生态。避免由于 CPP/C#/RUST 等语言 Dubbo SDK 能力不足导致业务选择和适配困难的问题。
- 网关友好。网关无需参与序列化,方便用户从传统的 HTTP 到泛化 Dubbo 调用网关升级到开源或云厂商的 Ingress 方案。
- 完善的异步和流支持。它从底层协议到上层业务带来性能提升,易于构建严格保证消息顺序的全链路异步流服务。
**目前,Dubbo SDK for Java 和 Go 完全支持 Triple 协议。** 在阿里巴巴,Triple 协议被广泛用于跨环境、跨语言和跨生态互操作,并在生产环境中使用了数十万个容器。
支持方法
Java SDK 支持 IDL 生成 Stub 和 Java 接口,IDL 方法推荐用于多语言、生态互操作和流需求,现有服务的平滑升级推荐接口方法。
- 旧的 Dubbo2 用户如何从现有协议升级到 Triple(待定)
- 新用户或业务参考 Dubbo3 Triple 快速入门
- 深入了解 Triple 协议:Dubbo3 Triple 协议设计与原理
上次修改时间:2023 年 1 月 2 日:增强 en 文档 (#1798) (95a9f4f6c1c)