目录
- 集群和分布式
- 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 评论