nginx——绑定 Nginx 进程到不同的 CPU 上

为什么要绑定 Nginx 进程到不同的 CPU 上 :默认情况下,Nginx 的多个进程有可能跑在某一个 CPU 或 CPU 的某一核上,导致 Nginx 进程使用硬件的资源不均,因此绑定 Nginx 进程到不同的 CPU 上是为了充分利用硬件的多 CPU 多核资源的目的。

1,首先呢我们来查看cpu个数

grep -c processor /proc/cpuinfo # 查看CPU核数

cpu的个数不同绑定亲和力方法也不同

worker_processes 2; # 2核CPU的配置

worker_cpu_affinity 01 10;

worker_processes 4; # 4核CPU的配置

worker_cpu_affinity 0001 0010 0100 1000;

worker_processes 8; # 8核CPU的配置

worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 1000000;

然后呢重新启动nginx 并且用ab进行压力测试

nginx——绑定 Nginx 进程到不同的 CPU 上

 

可以看到不同个nginx 在不同的cpu上面的利用率都差不多,

作者简介: 
陈志珂(头条号:强扭的瓜不好吃)公众号“铅笔学园”运维内容合作作者之一,目前就职于中国最大的安卓应用软件公司,任高级工程师现在公司任php开发工程师,python开发工程师,高级运维工程师。
铅笔学园:IT资源分享|知识分享,做初级程序员的指明灯

原文地址:https://www.cnblogs.com/qianbixueyuan/p/9518780.html