littlebot
Published on 2025-04-07 / 1 Visits
0

【源码】基于Muduo、Protobuf和Zookeeper的RPC框架

项目简介

本项目是一个基于Muduo网络库、Protobuf序列化工具和Zookeeper分布式协调服务的RPC框架。该框架实现了远程服务的注册、发现和调用,支持异步回调机制,并解决了网络数据粘包问题。

项目的主要特性和功能

  • 远程服务注册与发现:利用Zookeeper实现RPC服务节点的注册与分发,通过Zookeeper的watcher机制动态监视节点变化,确保服务列表的实时更新。
  • 异步RPC调用:基于Muduo网络库实现高效的异步RPC调用,支持回调机制,提升系统响应速度。
  • 自定义RPC协议:设计自定义RPC协议,解决网络数据粘包问题,确保数据传输的可靠性。
  • 序列化与反序列化:使用Protobuf实现远程调用参数的序列化和反序列化,减小请求体积,提高传输效率。
  • 线程安全日志模块:自定义线程安全的队列实现日志模块,确保日志记录的线程安全性。

安装使用步骤

假设用户已经下载了本项目的源码文件,按以下步骤操作: 1. 修改配置文件:根据实际需求修改配置文件,默认配置如下: bash rpcServerIp=127.0.0.1 rpcServerPort=8000 zkIp=127.0.0.1 zkPort=2181 2. 执行一键编译脚本: bash ./autobuild.sh 3. 启动Zookeeper服务:确保Zookeeper服务已启动。 4. 启动RPC服务器: bash ./provider -i ../conf/rpcConf.conf 若无报错,则RPC服务器启动成功,等待客户端调用。 5. 启动RPC客户端调用者: bash ./consumer -i ../conf/rpcConf.conf 若无报错,则客户端调用成功,可以进行远程服务调用。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】