搭建一个简单的负载均衡,然后关闭其中一台再来访问,会发现我们的浏览器卡住一直转圈圈,过了很久才会显示结果。由此我们可以得出结论Nginx负载的时候如果其中一台服务挂掉了,它会把请求转发到另一个可以提供服务的机器,其中这之间的超时等待默认是60s。我们可以通过这一个配置去改变这个时间,proxy_connect_timeout 定义与代理服务器建立连接的超时。

请注意,此超时通常不能超过75秒。

upstream cluster{

server nacos-node1.strongman.cluster.local:8848;

server nacos-node2.strongman.cluster.local:8848;

server nacos-node3.strongman.cluster.local:8848;

server nacos-node4.strongman.cluster.local:8848;

}

server {

listen 80;

server_name localhost;

location / {

proxy_pass http://cluster;

proxy_set_header Host $http_host;

# 添加 HTTP 响应头,以便知道负载到哪台服务器上

add_header backendIP $upstream_addr;

# 响应码

add_header backendCode $upstream_status;

# 服务器与被代理服务连接超时时间,代理超时

proxy_connect_timeout 60s;

}

}

参考配置

Module ngx_http_proxy_module

好文推荐

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: