Nginx负载均衡当其中一台服务器挂掉之后,Nginx负载将会怎样呢?

您所在的位置:网站首页 系统宕机了 Nginx负载均衡当其中一台服务器挂掉之后,Nginx负载将会怎样呢?

Nginx负载均衡当其中一台服务器挂掉之后,Nginx负载将会怎样呢?

2023-09-28 02:37| 来源: 网络整理| 查看: 265

之前写过Nginx负载均衡的配置,详情可以看这里 Nginx实现负载均衡Linux版本(六种负载策略)

今天来探讨一下当我们有多台服务的时候,其中一台服务挂掉了会怎么样呢?

我们使用上文中的思路去搭建一个简单的负载均衡,然后关闭其中一台再来访问,会发现我们的浏览器卡住一直转圈圈,过了很久才会显示结果。

由此我们可以得出结论Nginx负载的时候如果其中一台服务挂掉了,它会把请求转发到另一个可以提供服务的机器,其中这之间的超时等待默认是60s

我们可以通过这一个配置去改变这个时间(proxy_connect_timeout 定义与代理服务器建立连接的超时。请注意,此超时通常不能超过75秒。),比如我们可以把时间设置成1s,这样用户就无感知了。(当然了这个时间有点极端,只是为了测试)

location / { proxy_pass http://xdx97.com; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; #nginx服务器与被代理服务连接超时时间,代理超时 proxy_connect_timeout 1s; }

重启Nginx之后,会发现即使挂掉了一个服务,也可以很快的响应。

其它常用配置:

#允许客户端请求的最大单文件字节数 client_max_body_size 10m; #缓冲区代理缓冲用户端请求的最大字节数, client_body_buffer_size 128k; #nginx跟后端服务器连接超时时间(代理连接超时) proxy_connect_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时) proxy_read_timeout 90; #设置代理服务器(nginx)保存用户头信息的缓冲区大小 proxy_buffer_size 4k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置 proxy_buffers 32k; #高负荷下缓冲大小(proxy_buffers*2) proxy_busy_buffers_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传 proxy_temp_file_write_size 64k;

全部配置:

http://nginx.org/en/docs/http/ngx_http_proxy_module.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3