0%

RPC系列(一)-RPC与RUST比较

本篇文章主要介绍RPC是什么,RPC的具体过程,RPC和RUST的比较以及如何选择。

RPC是什么

RPC(Remote Procedure Call)是远程过程调用的简称。主要目的就是一个应用调用另一个应用的方法,调用方通过调用代理方法的形式调用被调用方的实现方法。调用协议常包括通信协议和序列化协议。底层的通信协议可以是HTTP、TCP等,根据不同的RPC框架而定。序列化协议常用ProtoBuf协议。

RPC具体过程

rpc具体流程

RPC和RUST比较

RUST是基于HTTP协议的RESTFul API设计风格的通信方式,也常用于应用之间的信息通信。但设计理念和底层原理是完全不同的。

HTTP+Rustful的优点是可读性好,支持跨语言。在运用之间通信的使用超越RPC。但缺点也很明显,HTTP是第七层协议,报文包含大量头部信息,有用信息占比少,因此效率和速度较低。另外使用HTTP协议调用接口封装封装,常需要封装很多参数以及校验方法。RPC则更好与其互补,但牺牲可读性来通过效率和性能是可取的。具体怎么选,需根据业务来,灵活站位。

RPC使用场景

Rustful常用于与第三方系统之间的信息通信,通过对外调用的接口。

RPC常用于自家系统之间的互相调用,更安全高效。