# webserver **Repository Path**: xhu-zdx/webserver ## Basic Information - **Project Name**: webserver - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-04-29 - **Last Updated**: 2024-04-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WebServer 参考:https://github.com/markparticle/WebServer.git ## 功能 * 利用IO复用技术Epoll与线程池实现多线程的Reactor高并发模型; * 利用正则与状态机解析HTTP请求报文,实现处理静态资源的请求; * 利用标准库容器封装char,实现自动增长的缓冲区; * 基于小根堆实现的定时器,关闭超时的非活动连接; * 利用单例模式与阻塞队列实现异步的日志系统,记录服务器运行状态; * 利用RAII机制实现了数据库连接池,减少数据库连接建立与关闭的开销,同时实现了用户注册登录功能。 ## 环境要求 * Linux * C++14 * MySql ## 模块(类)分析(正在完善...) ### 1. webserver - 成员变量 - 端口号 - 触发模式( 连接事件和I/O事件:ET | LT ) - 超时时间(毫秒) - socket优雅关闭连接选项 - 工作线程数量 - - 数据库端口 - 数据库用户名 - 数据库连接密码 - 数据库名 - 数据库连接池大小 - - 是否启用log - log等级 - log队列长度 - 成员函数 ### 2. sqlconnpool