# 压力测试 ###测试环境: * **系统**:debian 6.0 64位 * **内存**:64G * **cpu**:Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz (2颗物理cpu,6核心,2线程) * **Workerman**:开启200个Benchark进程 * **压测脚本**:benchmark * **业务**:发送并返回hello字符串 ###普通PHP(版本5.3.10)压测 短连接(每次请求完成后关闭连接,下次请求建立新的连接): 条件: 压测脚本开500个并发线程模拟500个并发用户,每个线程连接Workerman 10W次,每次连接发送1个请求 结果: 吞吐量:2.3W/S , cpu利用率:36% 长连接(每次请求后不关闭连接,下次请求继续复用这个连接): 条件: 压测脚本开2000个并发线程模拟2000个并发用户,每个线程连接Workerman 1次,每个连接发送10W请求 结果: 吞吐量:36.7W/S , cpu利用率:69% 内存:每个进程内存稳定在6444K,无内存泄漏 ###HHVM环境压测 短连接(每次请求完成后关闭连接,下次请求建立新的连接): 条件: 压测脚本开1000个并发线程模拟1000个并发用户,每个线程连接Workerman 10W次,每次连接发送1个请求 结果: 吞吐量:3.5W/S , cpu利用率:35% 长连接(每次请求后不关闭连接,下次请求继续复用这个连接): 条件: 压测脚本开6000个并发线程模拟6000个并发用户,每个线程连接Workerman 1次,每个连接发送10W请求 结果: 吞吐量:45W/S , cpu利用率:67% 内存:HHVM环境每个进程内存稳定在46M,无内存泄漏 ###### 以上压测脚本与WorkerMan运行在同一台机器上,使用的是较低版本的PHP5.3,如果使用PHP7,则性能会再次提高40%左右。 ## 压力测试需要内核调优 参见 [附录-内核调优](kernel-optimization.md)章节