带你读《Apache Dubbo微服务开发从入门到精通》——二、 HTTP/2(Triple)协议(1)

本文涉及的产品
性能测试 PTS,5000VUM额度
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 带你读《Apache Dubbo微服务开发从入门到精通》——二、 HTTP/2(Triple)协议(1)

二、 HTTP/2Triple)协议


1. Triple 协议背景


1) Triple 协议选型背景

Triple 协议是 Dubbo3 推 出 力协议。 Triple 意 为 , 通

Dubbo1.0/Dubbo2.0 两代协议的,以及云原生带来技术浪潮

Dubbo3 新协议 Triple 应运生。


a) RPC 协议基本定义

协议是 RPC 的核心,数据在网中的传输内容和格式。求、响应数据,通常还会包控制数据,如单求的序列化方式、时时间、压方式和鉴权信等。


协议的内容包三部分

数据交换格式:定义 RPC 求和对象在网中的内容

序列化方式。

协议结构:定义包段列表段语义及不方式。

协议通过定义规、格式和语义来定数据如何在网络间传输次成功RPC

需要通信的够按照协议定进行网流的读写对象转换。如

使用的协议达成就会出满足远程通信的


image.png


RPC 协议的设计需要考虑以下内容:


通用性:统一的二制格式,语言平台、输层协议支持。

扩展性:协议增加、升级、支持用户扩展和业务元数据

性能:As fast as it can be

穿透性:各种终端设备识别网关、理服务等。


通用性和高性能通常无同时到,需要协议设计者进行一


b) HTTP/1.1 协议


比于直接构建TCP 输层RPC 协议,构建HTTP 之上的远程调用解决方案会有的通用性,如 WebServices REST 架构,使用 HTTP+JSON 可以说是一事实标的解


构建在 HTTP 之上,有两个势:


HTTP 语义和可扩展性能很好满足 RPC 调用求。

通用性,HTTP 协议被网上的设备支持,具有很好的协议穿透性。


也存较明的问题:

Request–Response 模型,一链路上一等待的 Request请求。会产HOL

Human Readable Headers,使用更通用、更易阅读部传输格式,但性能相

无直接 Server Push 支持需要使用 Polling Long-Polling 式。


c) gRPC 协议

上面提到HTTP TCP 协议之上构建 RPC 协议各自点,相比于 Dubbo构建TCP 输层之上,Google gRPC 直接定义HTTP/2 协议之上。


gRPC HTTP2 Protobuf 而来


基于 HTTP2 的协议足够简单,用户天然server push/复用/流量控制能力。

基于 Protobuf 多语言平台二能力,提供的统一语言能力。

基于协议本的生态丰富,k8s/etcd 等组件的天然支持协议,云原生的事实协议标


也存在部分问


服务治理的支持比基础,更向于基础RPC 能,协议层缺少必要的统一定义对于用户而言直接起来并不容易。

绑定 protobuf 序列化方式,需要高的本和改造本,对于有的偏语言的用户而言,迁移视。



《Apache Dubbo微服务开发从入门到精通》——通信协议——二、 HTTP/2(Triple)协议(2) : https://developer.aliyun.com/article/1224947

相关文章
|
8月前
|
Dubbo Java 应用服务中间件
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
|
3月前
|
Dubbo Java 应用服务中间件
Spring Cloud Dubbo:微服务通信的高效解决方案
【10月更文挑战第15天】随着信息技术的发展,微服务架构成为企业应用开发的主流。Spring Cloud Dubbo结合了Dubbo的高性能RPC和Spring Cloud的生态系统,提供高效、稳定的微服务通信解决方案。它支持多种通信协议,具备服务注册与发现、负载均衡及容错机制,简化了服务调用的复杂性,使开发者能更专注于业务逻辑的实现。
86 2
|
5月前
|
Dubbo Java 应用服务中间件
💥Spring Cloud Dubbo火爆来袭!微服务通信的终极利器,你知道它有多强大吗?🔥
【8月更文挑战第29天】随着信息技术的发展,微服务架构成为企业应用开发的主流模式,而高效的微服务通信至关重要。Spring Cloud Dubbo通过整合Dubbo与Spring Cloud的优势,提供高性能RPC通信及丰富的生态支持,包括服务注册与发现、负载均衡和容错机制等,简化了服务调用管理并支持多种通信协议,提升了系统的可伸缩性和稳定性,成为微服务通信领域的优选方案。开发者仅需关注业务逻辑,而无需过多关心底层通信细节,使得Spring Cloud Dubbo在未来微服务开发中将更加受到青睐。
94 0
|
2月前
|
Dubbo 安全 应用服务中间件
Apache Dubbo 正式发布 HTTP/3 版本 RPC 协议,弱网效率提升 6 倍
在 Apache Dubbo 3.3.0 版本之后,官方推出了全新升级的 Triple X 协议,全面支持 HTTP/1、HTTP/2 和 HTTP/3 协议。本文将围绕 Triple 协议对 HTTP/3 的支持进行详细阐述,包括其设计目标、实际应用案例、性能测试结果以及源码架构分析等内容。
|
2月前
|
Dubbo Cloud Native 应用服务中间件
阿里云的 Dubbo 和 Nacos 深度整合,提供了高效的服务注册与发现、配置管理等关键功能,简化了微服务治理,提升了系统的灵活性和可靠性。
在云原生时代,微服务架构成为主流。阿里云的 Dubbo 和 Nacos 深度整合,提供了高效的服务注册与发现、配置管理等关键功能,简化了微服务治理,提升了系统的灵活性和可靠性。示例代码展示了如何在项目中实现两者的整合,通过 Nacos 动态调整服务状态和配置,适应多变的业务需求。
65 2
|
3月前
|
Dubbo Java 应用服务中间件
Dubbo学习圣经:从入门到精通 Dubbo3.0 + SpringCloud Alibaba 微服务基础框架
尼恩团队的15大技术圣经,旨在帮助开发者系统化、体系化地掌握核心技术,提升技术实力,从而在面试和工作中脱颖而出。本文介绍了如何使用Dubbo3.0与Spring Cloud Gateway进行整合,解决传统Dubbo架构缺乏HTTP入口的问题,实现高性能的微服务网关。
|
4月前
|
Dubbo 应用服务中间件 Apache
Star 4w+,Apache Dubbo 3.3 全新发布,Triple X 领衔,开启微服务通信新时代
在 Apache Dubbo 突破 4w Star 之际,Apache Dubbo 团队正式宣布,Dubbo 3.3 正式发布!作为全球领先的开源微服务框架,Dubbo 一直致力于为开发者提供高性能、可扩展且灵活的分布式服务解决方案。此次发布的 Dubbo 3.3,通过 Triple X 的全新升级,突破了以往局限,实现了对南北向与东西向流量的全面支持,并提升了对云原生架构的友好性。
163 14
|
5月前
|
负载均衡 Dubbo 应用服务中间件
框架巨擘:Dubbo如何一统异构微服务江湖,成为开发者的超级武器!
【8月更文挑战第8天】在软件开发中,微服务架构因灵活性和可扩展性备受欢迎。面对异构微服务的挑战,Apache Dubbo作为高性能Java RPC框架脱颖而出。它具备服务注册与发现、负载均衡及容错机制等核心特性,支持多种通信协议和序列化方式,能有效连接不同技术栈的微服务。Dubbo的插件化设计保证了面向未来的扩展性,使其成为构建稳定高效分布式系统的理想选择。
74 5
|
7月前
|
Dubbo 前端开发 Java
Dubbo3 服务原生支持 http 访问,兼具高性能与易用性
本文展示了 Dubbo3 triple 协议是如何简化从协议规范与实现上简化开发测试、入口流量接入成本的,同时提供高性能通信、面向接口的易用性编码。
16667 15
|
7月前
|
Java 应用服务中间件 Apache
Apache HTTP配置反向代理入门
Apache HTTP配置反向代理入门
453 0
Apache HTTP配置反向代理入门

推荐镜像

更多