权重均衡策略需与健康检查、故障剔除、backup节点及Keepalived热备协同实现高可用;它通过weight参数按性能比例分配流量,避免过载,但必须搭配max_fails/fail_timeout摘除异常节点,并用backup兜底、Keepalived保障入口冗余。
权重均衡策略本身不直接提供高可用,但它能显著提升集群在异构环境下的稳定性与容错能力。真正实现高可用,需要将权重配置与健康检查、故障自动剔除、备用节点、双机热备等机制协同使用。
当后端服务器性能不一致(如新旧机型混用、CPU/内存差异大),单纯轮询会导致强节点闲置、弱节点过载。权重策略通过 weight 参数显式表达处理能力比例:
server 10.0.0.1 weight=5 和 server 10.0.0.2 weight=2,表示前者承担约 71% 的流量,后者约 29%仅靠权重无法应对节点宕机或响应超时。Nginx 通过 max_fails 和 fail_timeout 实现被动健康检查:
server 10.0.0.1 weight=5 max_fails=3 fail_timeout=30s; 表示:连续 3 次失败(如 502/504 或超时)后,该节点被临时摘除 30 秒在 upstream 块中声明 backup 服务器,可作为“冷备”或“降级通道”:
server 10.0.0.3 backup; —— 正常情况下完全不接收请求单台 Nginx 仍是单点风险。生产环境需部署至少两台 Nginx 服务器,并用 Keepalived 实现 VIP(虚拟 IP)漂移: