ray-note/极客时间学习/Java 实战训练营/分布式服务/RPC.md

1.1 KiB

定义: 远程过程调用(Remote process call), 一起分布式系统的基础包含分布式系统基本功能租金:网络通信、序列化/反序列化、传输协议和服务调用

RPC 演进

阶段一

  • 服务消费者
    • RpcProtocol
    • RpcConnector
  • 服务提供者
    • RpcAcceptor
    • RpcProtocol

阶段二:

阶段三:

客户端组件和职责

  • RpcClient -- 负责导入(import) 远程接口的代理实现
  • RpcProxy -- 调用远程接口的代理实现
  • RpcCaller -- 负责编码的发送调用请求服务端并等待结果
  • RpcConnector -- 负责维持连接通道和发送数据到客户端

服务端组件和职责

  • RpcServer -- 负责导出(export)远程接口
  • RpcInvoker -- 负责调用服务端接口的具体实现并返回结果
  • RpcAcceptor -- 负责接收客户端请求并返回请求结果
  • RpcProcessor -- 负责在客户端控制调用过程,包括管理调用线程池等

通用组件和职责

  • RpcProtocol -- 负责协议的 编/解码
  • RpcChannel -- 充当数据传输的通道