-
OS: Unbuntu 18.04 (虚拟机,宿主机为Win10)
-
宿主机硬件:
- CPU: i5-6500T
- 内存: 8GB
-
虚拟机分配资源
- CPU资源: 4核
- 内存: 4GB
-
关闭系统所有调试信息以及输出,4 个工作线程并以守护进程运行(./webserver -d -t 4 -p 8080)
-
页面大小: 575 bytes/page
-
wenbench设置: 1000客户端、连接60s、短连接
-
空闲时线程CPU占用情况:
测试结果:
QPS: 37665 传输速度: 24.5 MB/S
- 测试结果:
- 测试时线程CPU占用:
-
关闭系统所有调试信息以及输出,8 个工作线程并以守护进程运行(./webserver -d -t 8 -p 8080)
-
页面大小: 575 bytes/page
-
wenbench设置: 1000客户端、连接60s、短连接
测试结果:
QPS: 34263 传输速度: 22.5 MB/S
- 测试结果:
- 测试时线程CPU占用:
- 我的给虚拟机配置的是四个核心,所以其实从结果可以看出开8个线程的反而比开四个线程的QPS略低,应该是线程之间切换开销增大造成的, 而四个线程正好匹配核心,性能达到最高。并且可以看到8线程CPU占用截图,其实同一时刻只有一半的线程处于运行状态(R),其它处于S(sleep), 所以线程个数的选择应该是与CPU核心相关的。