1. Monkey介绍
轻量级Web服务器:http://www.monkey-project.com/documentation/
小型、快速
开源项目
设计目标:主要针对嵌入式设备,硬件配置不高的情况下提供较高的性能
支持ARM、X86、X64处理器,能在多种Linux平台运行
多线程并发模式
安装要求:2.6.26或以上;pthreads库和libc库。
2. Monkey主流程
开始 --> 初始化 --> 创建监听socket --> 设置服务为Daumon进程 --> 系统时间初始化及时钟线程 --> Init thread keys
--> 设置当前进程GID/UID --> 扩展插件初始化 --> 创建工作线程 --> 等待工作线程初始就绪 -- > 等待客户端请求(循环) --> 结束
初始化包括:信号量初始化;系统配置初始化;全局变量初始化;工作线程调度初始化;扩展插件初始化
1)根据以上流程查看代码,从main开始;
2)在线debug方式,熟悉代码
$./configure --trace //添加编译选项,将debug信息打出来
$make clean
$make
$cd bin
$./monkey //运行monkey可以看到很多trace信息