Nginx配置worker_cpu_affinity 提升性能


原文:https://blog.csdn.net/songxiuliang/article/details/68060901

Nginx配置worker_cpu_affinity 提升性能

Nginx默认没有开启利用多核cpu,我们可以通过增加worker_cpu_affinity配置参数来充分利用多核cpu的性能。cpu是任务处理,计算最关键的资源,cpu核越多,性能就越好。

规则设定

(1)cpu有多少个核,就有几位数,1代表内核开启,0代表内核关闭

(2)worker_processes最多开启8个,8个以上性能就不会再提升了,而且稳定性会变的更低,因此8个进程够用了

示例:8核CPU,nginx配置信息:

1
2
worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

上面的配置表示:8核CPU,开启8个进程。00000001表示开启第一个cpu内核,00000010表示开启第二个cpu内核,依次类推;有多少个核,就有几位数,1表示该内核开启,0表示该内核关闭。

CPU工作状况:(输入 top 后,按1 查看)

1
2
3
4
5
6
7
8
9
10
11
12
top - 11:16:56 up 39 days,  1:16,  2 users,  load average: 0.09, 0.07, 0.10
Tasks: 134 total, 1 running, 133 sleeping, 0 stopped, 0 zombie
Cpu0 : 0.0%us, 0.0%sy, 0.0%ni, 95.1%id, 0.0%wa, 0.0%hi, 0.0%si, 4.9%st
Cpu1 : 0.0%us, 0.0%sy, 0.0%ni, 98.8%id, 0.0%wa, 0.0%hi, 0.0%si, 1.2%st
Cpu2 : 2.3%us, 0.0%sy, 0.0%ni, 92.8%id, 0.0%wa, 0.0%hi, 0.0%si, 4.9%st
Cpu3 : 4.6%us, 9.2%sy, 0.0%ni, 81.2%id, 0.0%wa, 0.0%hi, 0.0%si, 5.0%st
Cpu4 : 1.9%us, 0.0%sy, 0.0%ni, 96.1%id, 0.0%wa, 0.0%hi, 0.0%si, 1.9%st
Cpu5 : 0.0%us, 0.0%sy, 0.0%ni, 98.1%id, 0.0%wa, 0.0%hi, 0.0%si, 1.9%st
Cpu6 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu7 : 0.0%us, 0.0%sy, 0.0%ni, 96.9%id, 0.0%wa, 0.0%hi, 0.0%si, 3.1%st
Mem: 1024884k total, 891244k used, 133640k free, 144852k buffers
Swap: 262140k total, 4172k used, 257968k free, 434072k cached