RPC理论原理

目录

  • 集群和分布式
  • RPC通信原理

集群和分布式

集群:每一台服务器独立运行一个工程的所有模块
分布式:一个工程拆分了很多模块,每一个模块独立部署运行在一个服务器主机上,所有服务器协同工作共同提供服务,每一台服务器称作分布式的一个节点,根据节点的并发要求,对一个节点可以再做节点模块集群部署。
  分布式集群各服务器上运行各自的业务,当在一台服务器上需要调用另一台服务器的业务的时候,就是需要RPC来实现了。

RPC通信原理

  RPC(Remote Procedure Call Protocol)远程过程调用协议。

  caller服务器上调用callee服务器上的函数,将callee上的函数名以及需要的参数打包,通过网络的方式传输过去(此时的caller等待结果),callee上收到包之后将收到的包进行解包,通过信息找到对应的函数执行将结果打包然后通过网络传输给caller,caller收到包之后解包将结果return。
  中间打包和解包的过程称为数据的序列化和反序列化。中间的黄色部分绿色部分就是RPC这个框架需要做的事情。
黄色部分:设计rpc方法参数的打包和解析,也就是数据的序列化和反序列化,使用Protobuf。
绿色部分:网络部分,包括寻找rpc服务主机,发起rpc调用请求和响应rpc调用结果,使用muduo网络库和zookeeper服务配置中心(专门做服务发现)。
(mprpc框架主要包含以上两个部分的内容。)

本文链接:https://my.lmcjl.com/post/5853.html

展开阅读全文

4 评论

留下您的评论.