mprpc

项目介绍

该项目是一个基于muduo、Protobuf和Zookeeper实现的轻量级分布式RPC网络通信框架。

可以把任何单体架构系统的本地方法调用,重构成基于TCP网络通信的RPC远程方法调用,实现同一台机器的不同进程之间的服务调用,或者不同机器之间的服务调用,适用于把单体架构系统拆分成基于分布式微服务调用进行部署。

(喜欢的话点个赞和关注,以及Star哈哈)
项目地址:
github:https://github.com/IceHowe/mprpc
gitee:https://gitee.com/IceHowe/mprpc

项目特点

  • 基于muduo网络库实现高并发网络通信模块,作为RPC远程调用的基础。
  • 基于Protobuf实现RPC方法调用中方法和参数的序列化和反序列化,并定义网络通信中数据的传输格式(header_size(4字节长度信息) + service_name method_name args_size(header,服务名、方法名、参数长度,参数长度用于解决粘包问题) + args(RPC方法调用所需的参数))。
  • 基于ZooKeeper分布式协调服务中间件提供服务注册和服务发现功能。
  • 基于生产者消费者模型,设计了线程安全的缓冲队列,实现了异步工作方式的日志模块。

RPC方法调用总体流程

请添加图片描述

Logo

更多推荐