Skip to content

Commit

Permalink
Update readme.md
Browse files Browse the repository at this point in the history
  • Loading branch information
markparticle authored Jul 1, 2020
1 parent a408aa6 commit d0281b1
Showing 1 changed file with 7 additions and 8 deletions.
15 changes: 7 additions & 8 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,13 @@
用C++实现的高性能WEB服务器,经过webbenchh压力测试可以实现上万的QPS

## 功能
* 使用正则解析HTTP请求报文,可以处理静态资源请求
* 用最小堆实现的定时器,支持HTTP长连接以及超时断开
* 采用epoll ET边沿触发模式作为IO复用技术
* 实现Reactor IO模式,主线程响应事件,线程池中工作线程处理事件
* 实现自动增长缓冲区,作为HTTP连接的接收与发送的缓冲区
* 实现数据库连接池,提高对数据库操作的性能
* 通过访问数据库操作实现用户注册、登录功能
* 通过阻塞队列实现异步日志系统,记录服务器运行状态
* 在Linux系统下用C++实现的Web服务器,经webbench压力测试可以达到上万的QPS;
* 利用IO复用技术Epoll与进程池实现多线程的Reactor高并发模型;
* 利用正则与状态机解析HTTP请求报文,实现处理静态资源的请求;
* 利用标准库容器封装char,实现自动增长的缓冲区,基于小根堆实现的定时器,关闭超时的非活动连接;
* 利用单例模式与阻塞队列实现异步的日志系统,记录服务器运行状态;
* 利用RAII机制实现了数据库连接池,减小对数据库连接建立与关闭的开销,同时实现了用户注册登录功能。

* 增加logsys,threadpool测试单元(todo: timer, sqlconnpool, httprequest, httpresponse)

## 环境要求
Expand Down

0 comments on commit d0281b1

Please sign in to comment.