View on GitHub

时光粒子源码

分布式一致性/分布式存储等开源技术探讨, GitHub:https://github.com/timequark

RPC通信

wenweihu86/raft-java 的 RPC 通信层使用了 gPRC + Netty 方式,服务端与客户端使用 gRPC proto 定义消息格式,发送、接收消息时,对消息使用自定义 Netty 的 encoder、decoder 来完成 消息体 与 字节流 之间的编码、解码工作,使用自定义的 handler 来完成业务逻辑的处理。

先上 UML 图,了解一下大体的流程逻辑过程:

RPC 模型概览

(可以下载保存图片看大图~~~)

RPCServer

(可以下载保存图片看大图~~~)

RPCClient

(可以下载保存图片看大图~~~)