配置Nginx多核cpu,worker_cpu_affinity使用方法和范例
1. 2核cpu,开启2个进程
worker_processes 2;
worker_cpu_affinity 01 10;
01表示启用第一个cpu内核,10表示启用第二个cpu内核
worker_cpu_affinity 01 10;表示开启两个进程,第一个进程对应着第一个cpu内核,第二个进程对应着第二个cpu内核。
2. 2核cpu,开启4个进程
worker_processes 4;
worker_cpu_affinity 01 10 01 10;
开启了四个进程,它们分别对应着开启2个cpu内核
3. 4核cpu,开4个进程
worker_processes 4;
worker_cpu_affinity 0001 0010 0100 1000;
0001表示启用第一个cpu内核,0010表示启用第二个cpu内核,依此类推
4. 4核cpu,开启2个进程
worker_processes 2;
worker_cpu_affinity 0101 1010;
0101表示开启第一个和第三个内核,1010表示开启第二个和第四个内核
2个进程对应着四个内核
worker_cpu_affinity配置是写在/etc/Nginx/Nginx.conf里面的。
2核是 01,四核是0001,8核是00000001,有多少个核,就有几位数,1表示该内核开启,0表示该内核关闭。
5. 8核cpu,开8个进程
worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;
0001表示启用第一个cpu内核,0010表示启用第二个cpu内核,依此类推
worker_processes最多开启8个,8个以上性能提升不会再提升了,而且稳定性变得更低,所以8个进程够用了。
配置完毕后,重启Nginx ,执行/etc/init.d/Nginx restart
测试Nginx是否有用到多个cpu内核 ,在另一台机器上执行ab.exe -c 1000 -n 1000 http://www.domain.com/index.PHP
ab.exe是装apache后带的一个性能测试工具,它可以模拟多客户端的并发请求。
在服务器上执行top,然后按1,就可以看到cpu内核的工作情况。如果多个cpu内核的利用率都相差不多,证明Nginx己经成功的利用了多核cpu。
测试结束后,cpu内核的负载应该都同时降低。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。