我正在尝试使用上游配置nginx。
我们有3台机器运行应用程序服务器,代理将所有请求从nginx传递给应用程序服务。
我在nginx中使用了以下配置:
upstream appcluster {
server host1.example.com:8080 max_fails=2 fail_timeout=300s;
server host2.example.com:8080 max_fails=2 fail_timeout=300s;
}
现在的问题是,当一个服务器由于未知原因而关闭时,它会等待很长时间获得响应,或者有时它的连接超时时,请求来到nginx。
有人可以建议我使用正确的配置来获取appcluster的响应,无需延迟或连接超时,只要服务器不响应吗?
答案 0 :(得分:0)
然后这些可以提供帮助,请查看proxy_next_upstream
这些指令确定请求将在何种情况下传输到下一个服务器。
您的服务器块应如下所示:
server {
location / {
proxy_pass http://appcluster;
proxy_next_upstream error timeout http_404;
}
}