搭建一个简单的负载均衡,然后关闭其中一台再来访问,会发现我们的浏览器卡住一直转圈圈,过了很久才会显示结果。由此我们可以得出结论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; } }
参考配置
来源地址:https://blog.csdn.net/u010638673/article/details/132582536