RPC和HTTP协议

RPC 全称(Remote Procedure Call),它是一种针对跨进程或者跨网络节点的应用之间的远程过程调用协议。

它的核心目标是,让开发人员在进行远程方法调用的时候,就像调用本地方法一样,不需要额外为了完成这个交互做过的编码。

为了达到这样一个目标,就有了这样一个 RPC 协议模型。

Client stub 作为客户端存根,代理客户端请求并把请求参数进行组装,再把组装的参 数通过 Pack 也就是序列化。 最后通过远程通信协议把序列化的数据传输到目标服务器上。 服务端收到数据以后,通过 Unpack 也就是反序列化,再通过 Server stub 服务端存根来调用目标方法获取执行结果。

所以,通过这样一个模型,就实现了 RPC 的目标,让开发者在没有任何感知的情况下实现了远程方法的调用。

而 Http 协议是为 Web 浏览器与 Web 服务器之间的通信而设计的远程通信协议,它 定义了通信协议的报文规范(如图),我们可以使用 http 协议来实现跨网络节点的数据传输。

基于这样的特点,在 RPC 协议底层的数据传输,即可以直接使用 TCP 协议,也可以使用 http 协议。 因此,Rpc 协议和 Http 协议完全不是同一个纬度的东西,这两者并没有什么可比性。

相关推荐
若风的雨1 小时前
【deekseek】P2P通信路由过程
服务器·网络协议·p2p
inputA2 小时前
【LwIP源码学习6】UDP部分源码分析
c语言·stm32·单片机·嵌入式硬件·网络协议·学习·udp
玉笥寻珍2 小时前
Web安全渗透测试基础知识之HTTP参数污染篇
网络·网络协议·安全·web安全·http
玉笥寻珍3 小时前
Web安全渗测试基础知识之SSL交互异常利用篇
网络协议·安全·web安全·网络安全·交互·ssl
名誉寒冰4 小时前
# KVstorageBaseRaft-cpp 项目 RPC 模块源码学习
qt·学习·rpc
what_20185 小时前
分布式2(限流算法、分布式一致性算法、Zookeeper )
分布式·网络协议·rpc
彬彬醤5 小时前
查询电脑伪装IP,网络安全速查攻略!
网络·网络协议·tcp/ip·安全·web安全·http·https
还有几根头发呀7 小时前
常见 RPC 协议类别对比
网络协议
兴达易控7 小时前
ABB电机控制和保护单元与Profibus DP主站转Modbus TCP网关快速通讯案例
网络协议
江边垂钓者8 小时前
HTTP、HTTPS、SSH区别以及如何使用ssh-keygen生成密钥对
http·https·ssh