本文详细介绍了nginx负载均衡设备和服务器宕机自动转换方法,具有很好的实用价值,期待对大家有所帮助。跟我回去看看。
严格来说,nginx中并没有对负载均衡的后端开发节点进行健康检查,但是默认可以根据内置的ngx_http_proxy_module和ngx_http_upstream_module中的相关命令自动切换到身心健康节点来显示浏览。
以下是这两个模块中的一些相关命令:
英语语法:proxy_connect_timeout
默认值:proxy_connect_timeout60s
设置创建与后端开发服务器的连接的请求的超时时间。应该注意,这个请求超时通常不太可能超过75秒。
英语语法:proxy_read_timeout
默认值:proxy_read_timeout60s
从后端开发服务器加载响应的请求超时。这个请求超时指的是两个相邻读取的实际 *** 作之间的最大间隔,而不是所有响应传输的最大时间。如果后端开发服务器没有在请求超时期限内传输所有数据信息,连接将被关闭。
使用nginx_upstream_check_module模块检查后端开发节点的健康状况。
这是淘宝的技术精英团队开发设计的nginx模块。每个人都可以浏览淘宝tengine的官方网站http://tengine.taobao.org,获得这个版本的nginx。
在nginx.conf环境变量的上游添加健康检查,如下所示:
upstreamname{ server192.168.0.21:80; server192.168.0.22:80; checkinterval=3000rise=2fall=5timeout=1000type=http; }上面的意思是每3秒检查一次name的负载均衡内容中的所有节点,如果两次都正常,就会被识别出来。
realserver启动,如果测试失败5次,则realserver关闭,请求超时为1秒。
这里列出适用于nginx_upstream_check_module模块的命令的含义:
语法:checkinterval=毫秒[fall=count][rise=count][timeout=毫秒][default_down=true|false][type=TCP|http|SSL_hello|MySQL|ajp][port=check_port]
默认值:如果没有配备主要参数,默认值为:
interval=30000fall=5rise=2timeout=1000default_down=truetype=TCP
背景:上游
该命令可以打开后端开发服务器的健康检查功能。
命令后主要参数的实际含义是:
间隔:健康检查包推送到后端开发的间隔。
Fall(fall_count):如果连续不成功的频率达到fall_count,则认为服务器宕机。
Rise(rise_count):如果连续成功次数达到rise_count,则服务器被认为是up。
超时:身心健康需求后端开发请求超时。
Default_down:设置服务器的原始情况。如果为真,则表示默认设置为down如果是假的,那就是涨。默认值为真,即一开始服务器觉得不能用,直到健康检查包达到一定的成功频率才会认为身心健康。
类型:健康检查包的类型,现在有以下几种类型适用。
Tcp:简单tcp连接。如果连接成功,说明后端开发正常。
Ssl_hello:推送一个原始的SSLhello包,接受服务器的SSLhello包。
Http:推送HTTP需求,根据后端响应包的情况,告知是否存在后端开发。
Mysql:连接mysql服务器,根据接收服务器的问候包区分是否存在后端开发。
Ajp:将AJP协议的Cping包推送到后端开发,根据收到的Cpong包判断后端开发是否存在。
Port:特定后端开发服务器的ping端口号。
可以指定不同于真实服务项目的后端开发服务器的端口号。比如后端开发显示使用了443端口,你可以查看80端口的情况来识别后端开发的物理状况。
默认设置为0,表示与后端开发服务器呈现的真实服务项目的端口号相同。
此选项出现在Tengine-1.4.0中。
填写专长:nginx请求超时,自动发回
1.状态:
在应用nginx作为负载后,如果url响应超过一定时间(一般是十分钟),请求会完全自动重传到另一台设备;
2.原因:
在nignxi中,请求会在超时后自动发送。默认设置为开启,设备必须关闭。
3.解决方案:
nginx中的起重设备:
proxy_next_upstreamoff
以上nginx负载均衡设备,服务器宕机自动转换方法就是我全部分享给大家的。期待给你一个参考,也期待你的申请。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)