Dubbo的优势

本文探讨了RPC(远程过程调用)与HTTP在性能、安全性和调用便利性上的差异,强调了RPC在企业内部服务间的高效性和安全性,尤其是在轻量级序列化、网络优化和定制化方面的优势,以及为何在特定情况下RPC比HTTP更快。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

rpc

RPC 是Remote Procedure Call的缩写,译为远程过程调用。要想实现RPC通常需要包含传输协议和序列化协议的实现

RPC主要用于公司内部服务之间的互相调用,所以他性能消耗低,传输效率高,服务治理方便而HTTP主要用于对外的异构环境,浏览器调用,APP接口调用,第三方接口调用等等.

在异构系统(跨语言和跨平台),HTTP具有更好的兼容性,因为HTTP是一种通用的协议,几乎所有的编程语言和操作系统都支持HTTP协议,而不是所有的编程语言和操作系统都支持相同的RPC协议。
RPC适合用在企业内部,要求使用同一套注册中心进行服务治理,如果是跨组织,或者跨公司,这种情况只能用更加通用的HTTP进行通信

优势

性能好: RPC在传输效率上通常比HTTP更高,此外,RPC可以使用更紧凑的数据格式,如ProtocolBuffers和Thrift,可以更有效地利用网络带宽和存储空间。
安全性:目前,Dubbo等RPC框架主要应用在企业内部之间的系统调用,而内部系统之间调用的话安全性就更有保障一些
调用简单: RPC可以帮我们像调用本地方法一样调用远程代码,而HTTP调用需要拼接Body、Header等等,过于复杂。 

为什么rpc比http更快一些

轻量级序列化协议,RPC通常使用更高效的数据序列化格式(如Protocol Buffers、Thrift等),这些格式专门为性能和效率设计,它们比HTTP标准使用的文本格式(如JSON、XML)更紧凑、解析更快

网络协议更优,RPC的网络通信协议通常被设计的更轻量(如Netty),他一般不需要像HTTP那样有很复杂的Header信息,从而不需要传输太多的数据

长连接,虽然RPC和HTTP都是基于TCP的,但是RPC可以使用长连接和更有效的连接管理策略

定制优化,RPC框架通常允许更深层次的定制和优化,比如调整底层传输细节、序列化方式和错误处理机制。而HTTP作为一个标准化的Web协议,其灵活性和定制能力可能较低,特别是在面向性能的场景中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值