据网上有人说nginx的配置中:
nginx支持的最大连接数与以下因素有关:
worker_processes 1; events { worker_connections 1024; } ulimit -a 显示的open file:1024
但是经过测试,结果如下:
cpu:6核 (用cat /proc/cpuinfo |grep "cores"|uniq命令查到的)
系统最大连接数:1024 (用ulimit -a查到的)
测试并发的机器为:1台,用siege工具进行的访问测试
worker_processes |
worker_connections |
实际连接数 |
2 |
1024 |
1018 |
3 |
341 |
722 |
2 |
512 |
1020 |
2 |
32 |
64 |
3 |
32 |
95 |
4 |
32 |
96 |
5 |
32 |
67 |
6 |
32 |
68 |
6 |
32 |
128 |
6 |
64 |
194 |
6 |
100 |
242 |
根据结果我们可以看出,(nginx支持的最大连接数=worker_processes*worker_connections,当然统计过程中我还加了进程数,所以精确统计的时候要减去)
网上说的worker_processes最好和cpu核数一致,这种说法并不完全适用;当worker_processes=6时,竟然结果不确定;
相反在worker_processes=2的时候竟然出奇地稳定。