fair

'fair' 指令在 NGINX 中启用一种公平的负载均衡机制,根据当前负载将请求分配到 upstream 服务器。

语法fair;
默认值none
上下文upstream
参数any

说明

'fair' 指令是对 NGINX 的 upstream 模块中传统 round-robin 负载均衡方法的增强。它通过考虑后端服务器的当前负载以及它们正在处理的请求数量来智能地引导流量到后端服务器。在后端服务器处理能力不均或遭遇临时过载的场景中,这尤其有益。通过跟踪每台服务器的正在处理请求数并优先选择活动连接较少的服务器,'fair' 指令有助于保持更好的整体性能和用户响应性。

使用时,可以在 'upstream' block 中包含此指令以定义一组后端服务器。负载均衡器会收集每台服务器的指标(例如活动请求数),并基于这些指标做出请求分配决策。这样,如果一台服务器繁忙而另一台空闲,请求就会被路由到较不繁忙的服务器,从而优化资源利用并降低客户端的响应时间。需要注意的是,'fair' 指令需要特定配置以确保其能正确跟踪负载并相应地作出反应,尤其是在与后端服务器的健康检查结合使用时。

配置示例

upstream mongrel {
    fair;
    server 127.0.0.1:5000;
    server 127.0.0.1:5001;
    server 127.0.0.1:5002;
}

确保为后端服务器配置适当的健康检查,以避免将流量导向已宕机的服务器。

监控服务器响应时间和性能,因为 'fair' 指令依赖准确的流量指标以实现最佳运行。

请注意,为权重设置额外参数可能会影响请求的分配方式,如果配置不当,可能导致负载不均。

← 返回所有指令