概述
之前在暑假有空学习了一下mprpc项目,这是一个基于陈硕大佬写的muduo库、protobuf的分布式rpc框架,现在想整理一下内容(众所周知,学了不整理等于白学)
技术栈
- 集群和分布式概念以及原理
- RPC远程过程调用原理以及实现
- Protobuf数据序列化和反序列化协议
- Protobuf数据序列化和反序列化协议
- ZooKeeper分布式一致性协调服务应用以及编程
- muduo网络库编程
- conf配置文件读取
- 异步日志
- CMake构建项目集成编译环境
- github管理项目
- C++11新特性(thread、bind等)
项目环境
ubuntu22.04(muduo、boost、Zookeeper)、VSCode
环境安装
boost库安装
1、去boost官网下载源码
2、解压安装
tar -zxvf boost_1_86_0.tar.gz
# 进入目录
cd boost_1_86_0/# 运行bootstrap.sh工程编译构建程序,需要等待一会儿
./bootstrap.sh # 源码根目录下生成了b2程序,运行b2程序如下
./b2
安装成功会出现这样
最后,再把上面的boost库头文件和lib库文件安装在默认的Linux系统头文件和库文件的搜索路径下,运行下面命令(因为要给/usr目录下拷贝文件,需要先进入root用户)
root@hf-virtual-machine:/home/hf/Env/boost_1_86_0# ./b2 install
安装成功会打印如下信息
3、验证安装是否成功(使用一下C++11的bind()函数)
#include <iostream>
#include <boost/bind.hpp>
#include <string>
using namespace std;class Print
{
public:void print(string name) { cout << name << " is learning Cpp!" << endl; }
};int main()
{Print p;auto func = boost::bind(&Print::print, &p, "hao fei");func();return 0;
}
编译运行后输出
至此,boost库安装完毕!