首页 > 代码库 > nginx的 CPU參数worker_processes和worker_cpu_affinity使用说明

nginx的 CPU參数worker_processes和worker_cpu_affinity使用说明

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

worker_cpu_affinity这个參数要结合 worker_processes来一起使用。

首先 先说 worker_processes:

worker_processes指明了nginx要开启的进程数,据官方说法,一般开一个就够了,多开几个。能够降低机器io带来的影响。

一般为当前机器总cpu核心数的1到2倍。如,我的机器为双核,那么开4个足够了。

然后 说下worker_cpu_affinity:

worker_processes 4;  
worker_cpu_affinity 0001 0010 0100 1000;  
上面实例说明,开启了4个进程,每个进程分配一个cpu


最关键的地方没说清楚,如何来表示每一个CPU?

技术分享

那么,16核的cpu每一个进程分配到一个cpu就应该是

技术分享

在被測试的server上查看cpu状态
top
然后按1,能够看到每一个cpu信息

技术分享


nginx的 CPU參数worker_processes和worker_cpu_affinity使用说明