Web服务器参考-muduo
简介
本项目是由C ++ 11编写的一个静态Web服务器,能够解析GET请求,参考了陈硕大佬的muduo网络库,linya的WebServer和游双的《 Linux高效服务器编程》。在本机上使用webbench并发1000个客户端访问,短连接能达到大约3wQPS长连接能达到大约7wQPS。
用法
mkdir build
cd build
cmake ..
make
项目设计
本项目使用的并发模型是Reactor +非双重io分配+线程池,设计基本遵循muduo中所说的每个线程一个循环。一个mainloop负责接受连接,然后将连接线程池中的loopthread处理,loopthread全权负责接受到的连接,即同时负责接受数据,对数据进行处理和发送数据。
项目使用基于对象的设计,而非面向对象的设计,大量使用std :: bind来代替虚函数。
项目使用的是epol
2022-03-17 11:09:41
326KB
C++
1