当前位置: 首页 > news >正文

从零开始实现RPC框架---------项目介绍及环境准备

一,介绍

RPC(Remote Procedure Call)远程过程调⽤,是⼀种通过⽹络从远程计算机上请求服务,⽽不需要 了解底层⽹络通信细节。RPC可以使⽤多种⽹络协议进⾏通信, 如HTTP、TCP、UDP等, 并且在 TCP/IP⽹络四层模型中跨越了传输层和应⽤层。简⾔之RPC就是像调⽤本地⽅法⼀样调⽤远程⽅法。 过程可以理解为业务处理、计算任务,更直⽩的说,就是程序/⽅法/函数等,就是像调⽤本地⽅法⼀样 调⽤远程⽅法。

 二,该项目的基本模块

我们的项⽬是基于C++、JsonCpp、muduo⽹络库实现⼀个简单、易⽤的RPC通信框架,即使是不懂 ⽹络的开发者也可以很快速的上⼿,它实现了同步调⽤、异步callback调⽤、异步futrue调⽤、服务注 册/发现,服务上线/下线以及发布订阅等功能设计。虽然没有实现一个完整的RPC框架,但是这个项目仍然值得我们学习。

三,项目环境准备

该项目在ubuntu22.04环境下实现,在开始项目的学习时首先要搞定的就是项目环境的搭建。下面我们就来安装下该项目要使用到的工具。

//安装wget
sudo apt install wget
//安装lrzsz工具
sudo apt-get install lrzsz
//安装gcc/g++编译器
sudo apt-get install gcc g++
//安装项目构建工具make
sudo apt-get install make
//安装gdb调试工具
sudo apt-get install git
//安装cmake工具
sudo apt-get install cmake
//安装git
apt install git
//安装jsoncpp库
sudo apt-get install libjsoncpp-dev
//安装muduo库
git clone https://github.com/chenshuo/muduo.git
//安装依赖环境
sudo apt-get install libz-dev libboost-all-dev

 因为muduo库是在github上面下载下来的,所以需要解压并编译。指令如下:

unzip muduo-master.zip./build.sh./build.sh install

当执行玩上面的安装muduo库的文件后便会在以下路径下看到muduo库的存在

四,结语

按照上面的步骤搭建好项目环境后,便可以开始做项目了。 

 

 

http://www.lryc.cn/news/452411.html

相关文章:

  • 论文阅读:PET/CT Cross-modal medical image fusion of lung tumors based on DCIF-GAN
  • java基础 day1
  • cpp,git,unity学习
  • HTML增加文本复制模块(使用户快速复制内容到剪贴板)
  • Spring Cloud面试题收集
  • 观测云对接 SkyWalking 最佳实践
  • AI少女/HS2甜心选择2 仿天刀人物卡全合集打包
  • MISC - 第11天(练习)
  • [3.4]【机器人运动学MATLAB实战分析】PUMA560机器人逆运动学MATLAB计算
  • centos常用知识和命令
  • 基于yolov8调用本地摄像头并将读取的信息传入jsonl中
  • Linux中的进程间通信之管道
  • 【Vue】vue2项目打包后部署刷新404,配置publicPath ./ 不生效问题
  • 【PyTorch】生成对抗网络
  • Vue3轻松实现前端打印功能
  • SHA-1 是一种不可逆的、固定长度的哈希函数,在 Git 等场景用于生成唯一的标识符来管理对象和数据完整性
  • Activiti7 工作流引擎学习
  • pytorch使用LSTM模型进行股票预测
  • 掌握 C# 异常处理机制
  • 【Redis】Redis Cluster 简单介绍
  • 【EXCEL数据处理】000010 案列 EXCEL文本型和常规型转换。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。
  • golang grpc进阶
  • Java JUC(三) AQS与同步工具详解
  • 使用rust写一个Web服务器——async-std版本
  • C语言复习概要(一)
  • 二、kafka生产与消费全流程
  • 本地搭建OnlyOffice在线文档编辑器结合内网穿透实现远程协作
  • ScrapeGraphAI 大模型增强的网络爬虫
  • PDF转换为TIF,JPG的一个简易工具(含下载链接)
  • Wireshark 解析QQ、微信的通信协议|TCP|UDP