(7)muduo介绍

1.muduo的介绍的总结

  • 不支持 UDP,只支持 TCP。
    UDP适合音视频
  • 支持使用模式: non-blocking IO + one event loop per thread和thread poll,不支持阻塞 IO
  • API 简单易用,只暴露具体类和标准库里的类。 API 不使用 non-trivial templates(有用的构造函数),也不使用虚函数
  • 只做 library,不做成 framework。
    muduo库具有框架的特征,可以实现:控制翻转
    (1)库中的类相对独立,编写应用时,需要编写一些 胶水代码来粘合。
    框架是能够应用于特定领域的,不需要胶水代码来粘合。
    (2)框架为用户提供一些注册回调函数,使得框架能够调用我们所编写的回调函数,及:控制反转(框架调用回调函数)

2.muduo的安装的总结

  • 参考<muduo网络库的使用手册>,这里仅仅总结一些重点
  • 安装过程:
$ sudo apt-get install cmake
$ sudo apt-get install libboost-dev
$ tar zxf muduo-0.9.1-beta.tar
$ cd muduo/
$ ./build.sh


说明:
(1./build.sh -j2表示使用2个线程来编译
(2./build.sh install,会将muduo头文件和静态库文件(muduo只提供了静态库)安装到与muduo文件夹同级
的../build/debug-install/(include,net,lib):
include是muduo的头文件,net是网络的头文件,lib是静态库文件
(3)g++ -I 指定头文件的路径 -L 指定库的路径
  • 按照(1)build的结果是:
    在这里插入图片描述
  • 运行示例:
$ ./inspector_test
在网页上输入:http://192.168.244.100:12345/proc/status

说明:
(1)运行的路径:不在muduo中的,与muduo目录同一级的build/debug/bin中,
编译的http库在build/debug/lib/libmuduo_http.a中;
build/debug/lib/libmuduo_base.a是基础库
build/debug/lib/libmuduo_net.a是网络库,其依赖于基础库

(2)前面是虚拟机的IP地址,12345是http的端口

(3)http的接口,先到任务服务器,再把任务服务器分配到后端的应用服务器,后端的应用服务器暴露一个端口给任务服务器
(任务服务器通过该接口可以查询后端的状态),让任务服务器可以起到负载均衡的作用
  • 对于上述(2),其结果如下所示:
    在这里插入图片描述
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喜欢打篮球的普通人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值