我有一台面向公众的 nginx 服务器,充当本地上游服务器的反向代理。我有两个 ISP 提供商,因此我希望 nginx 在主 ISP 发生故障时将故障转移到备用 ISP。
标准:
- 我希望在第一次出现连接问题时就故障转移到备份线路。
- 每当发生故障转移时,我都希望在重新连接主线路之前,坚持使用备用线路(如果备用线路可以正常工作)30 秒。
以下是我参考网上的各种代码片段制作的上游配置:
upstream remote_server {
server 1.2.3.4:443 fail_timeout=10 max_fails=1; # primary_line_ip
server 5.6.7.8:443 fail_timeout=30 backup; # backup_line_ip
}
但是,我需要帮助解决以下问题:
- 这表示什么
fail_timeout=10
? - 这是否意味着 nginx 在故障转移之前将等待 10 秒以达到连接超时? - 设置的含义是什么
fail_timeout=0
? - 这是否意味着 nginx 将始终在主线路上尝试所有请求,并且仅在主线路出现故障时才使用备份?