【Nginx】负载均衡当其中一台服务器宕机之后

搭建一个简单的负载均衡,然后关闭其中一台再来访问,会发现我们的浏览器卡住一直转圈圈,过了很久才会显示结果。由此我们可以得出结论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

相关推荐
NGINX开源社区35 分钟前
使用 NGINX 作为 AI Proxy
大数据·人工智能·nginx
瀚高PG实验室15 小时前
nginx中配置数据库连接
运维·数据库·nginx·瀚高数据库
小句18 小时前
Nginx 配置完整指南
运维·nginx
学不完的19 小时前
Zrlog面试问答及问题解决方案
linux·运维·nginx·unity·游戏引擎
学不完的19 小时前
ZrLog 博客系统部署指南(无 War 包版,Maven 构建 + 阿里云镜像优化)
java·linux·nginx·阿里云·maven
伟大的大威19 小时前
彻底解决 Nginx Proxy Manager 反代 MinIO 报 SignatureDoesNotMatch (S3 签名不匹配) 的终极方案
运维·nginx·minio
秦渝兴19 小时前
从手工高可用到全容器化:我的 Keepalived+Nginx+Tomcat+MySQL 项目迁移实战
linux·运维·mysql·nginx·容器·tomcat
学不完的20 小时前
ZrLog 高可用反向代理架构
linux·运维·nginx·架构·负载均衡
半路_出家ren20 小时前
Nginx基础学习
运维·网络·网络协议·学习·nginx·网络安全
2301_8073671920 小时前
Linux(CentOS)安装 Nginx
linux·nginx·centos