worker_priority

在多核系统上为工作进程实现更好的调度而设置优先级。 — NGINX Core

worker_priority
main
语法worker_priority number;
默认值none
上下文main
模块NGINX Core
参数1

说明

`worker_priority` 指令允许你为 NGINX 的工作进程指定 nice 值,这可以影响操作系统在多核环境中如何调度这些进程。nice 值是一个整数,范围从 -20(最高优先级)到 19(最低优先级),可以细致地控制 CPU 资源如何分配给你的 NGINX 工作进程。该指令在需要相对于其他系统进程优先处理 web 流量的环境中特别有用,能确保 web 服务器在负载下快速且高效地响应。 默认情况下,NGINX 的工作进程继承系统的默认优先级设置。当你使用 `worker_priority` 指令设置特定优先级时,目的是通过减少与可能占用 CPU 资源的其他进程发生争用的可能性,使服务器的响应时间更可预测、更高效。需要注意的是,为 NGINX 工作进程设置较高优先级可能会导致其他系统进程的资源争用,因此需要谨慎考虑整体系统负载和需求。 在配置 NGINX 时,更改 `worker_priority` 设置后务必进行充分测试,因为其效果会根据工作负载和服务器架构有很大差异。此外,并非所有操作系统都支持 nice 的所有取值,因此建议参阅你所使用操作系统的文档以确保兼容性。

配置示例

worker_priority 10;

将优先级设置得过高可能会使服务器上的其他关键进程得不到 CPU 时间,从而导致不稳定。

并非所有操作系统都支持完整范围的优先级值,这可能导致意外的行为。

超过操作系统设置的最大 nice 值可能会导致配置错误。