mprpc框架
mprpc框架的整体结构如下所示:

caller
发起调用时:
user发起远程调用(local call),user-stub对要调用的方法所需要的参数进行序列化(pack argument),数据序列化使用protobuf。RPC-runtime进行传输(transmit),状态调整至wait,然后等待运行结果的返回。中间的网络业务call packet由muduo库进行。

获取到被调用方的返回结果时:
RPC-runtime获取到callee发回的数据(receive),由user-stub对结果进行反序列化(unpack result),数据反序列化使用protobuf,最后由user获取其结果(local return)。

callee
收到调用请求时:
由muduo库实现网络业务后,callee收到调用请求。由RPC-runtime模块获取数据包(receive),Server-stub对参数进行反序列化(unpack argument),Server对方法进行调用(call),通过调用(work)

mprpc框架详细介绍了caller和callee之间的通信过程。caller在发起远程调用时,首先对参数进行protobuf序列化,再由RPC运行时进行传输。当接收到返回结果时,反序列化结果并返回给user。callee端则负责接收调用请求,反序列化参数,执行方法,将结果序列化并通过RPC运行时回传。整个过程中,网络传输依赖于muduo库。

1413

被折叠的 条评论
为什么被折叠?



