NGINX CPU亲和性 设置

3 min read

NGINX CPU亲和性设置

现在的CPU通常是多核的,并可以通过超线程来虚拟更多核数
亲和力就是为多核 CPU 需做到让Nginx服务充分的配合使用,从而提高性能

配置原理

Nginx运行时会启用1个 master 进程及多个 worker 进程,worker 进程负责处理请求
如果 worker 进程在多核 CPU 中发生频繁的调度就会损耗性能在这种情况下,希望减少这种频繁调度
让每一个 Nginx 的 worker 线程都能够固定到具体的 CPU 核心上
就需要配置 Nginx 的 CPU 亲和性来解决这个问题

配置方式

  1. 推荐直接将配置项设置成 auto (worker_cpu_affinity)
    即采用了 Nginx 推荐的 CPU绑核策略方式
  2. 手动绑定,将 worker 线程数量与 CPU 核心数一一绑定方式设置
    设置成 auto Nginx 会自动识别并按照推荐策略来分配 worker 线程和CPU