RPC学习笔记

RPC学习笔记

RPC(Remote Procedure Call,远程过程调用)是一种计算机通信协议,它允许程序在不同的地址空间中调用另一个程序的函数,就像调用本地函数一样。通过RPC,开发人员可以构建分布式系统,其中程序可以在不同的计算机或网络节点上运行,但仍能相互通信并调用对方的服务或方法。

RPC工作流程

  1. 客户端发起调用:客户端调用一个本地的代理函数(stub),并将参数传给它。
  2. 序列化参数:客户端stub将参数序列化。
  3. 发送请求:将请求发送到被调用的远程服务器。
  4. 远程服务器处理请求:远程服务器收到请求后反序列化参数,调用本地的目标函数。
  5. 远程服务器返回调用结果:远程服务器执行完函数后,将执行结果序列化并返回给客户端。
  6. 客户端接收结果:客户端接受到远程服务器的响应,然后反序列化结果,最后将它返回给最初调用的程序。

RPC框架

主流的RPC框架有:

  • gRPC
  • Dubbo

评论