sysguard_load

`sysguard_load` 指令配置系统负载监控阈值,当负载超过阈值时触发指定操作。

语法sysguard_load load=value [action=string];
默认值none
上下文http, server, location
参数1-2

说明

sysguard_load 指令在 NGINX 的 sysguard 模块中,允许管理员设置平均负载阈值;当超过这些阈值时会执行指定的操作。它接受一个或两个参数:第一个参数指定负载阈值,第二个可选参数定义在超过该阈值时要采取的操作。此功能对于在高并发条件下维持服务器性能至关重要。该指令与 sysguard 框架集成,实时管理服务器健康状况,有助于防止导致服务降级或停机的过载场景。配置后,如果服务器的平均负载超过定义的阈值,将会执行指定操作——通常是重定向到维护页面或向用户返回 503 Service Unavailable 响应。可以在同一配置块中使用多个此指令实例,以便对不同的服务器上下文进行精细控制。重要的是,该功能要求 sysguard 模块被编译进 NGINX 并正确初始化,以确保可以有效地监控所需的指标。在设置阈值时,还必须考虑系统能力和典型负载模式,以避免误报导致不必要的触发。此外,确保启用适当的日志记录有助于排查达到负载限制时的事故,提供有关潜在流量激增或系统瓶颈的洞见。

配置示例

sysguard_load load=10.5 action=/loadlimit;

确保正确的上下文;sysguard_load 必须在有效的 httpserverlocation 块中定义。

action 指令必须指向在 NGINX 中配置的有效位置或处理程序;否则会导致服务器错误。

避免将负载阈值设置得过低,这可能会在正常流量波动期间导致不必要的服务中断。

← 返回所有指令