- 利用IO复用技术epoll+与线程池实现的多线程的Reactor 半同步半反应堆模型(支持ET | LT)
- 利用正则与状态机解析HTTP请求报文,实现处理静态资源的请求
- 利用标准库容器封装char,实现自动扩展的缓冲区
- 实现了小根堆和时间轮定时器,关闭超时的非活动连接
- 采用单例模式与多功能日志,实现日志分离,以及自定义格式输出
- 采用yaml-cpp库通过配置文件进行配置
- 增加了基于gtest的单元测试
-
git clone 后在当前文件夹执行dockerfile即可
-
然后执行下述命令
docker run -it --name webserver -p 1111:1111 -p 80:80 webserver
默认端口为 1111
需要更改可以重新创建容器并暴露端口,然后在etc/config文件更改即可
CMake3.13以上
C++ 17
MySQL
-
克隆后进入WebServer文件夹
-
mkdir build cd build cmake .. make ./main