概述
nginx对上游服务器的健康检查默认采用惰性策略,可以集成
nginx_upstream_check_module模块来进行主动健康检查
nginx_upstream_check_module支持tcp心跳和http心跳检测
TCP心跳检查
upstream backend{
server 192.168.61.1:9080 weight=1;
server 192.168.61.1:9090 weight=2;
check interval=3000 rise=1 fail=3 timeout=2000 type=tcp;
}
配置使用TCP进行心跳检测
1.interval 检测间隔时间,此处配置了每间隔三秒检查一次
2.fail 检测失败多少次后,上游服务器被标识为不存货
3.rise 检测成功多少次后,上游服务器被标识为存活,并可以处理请求
4.timeout 检测请求超时时间配置
HTTP心跳检查
upstream backend{
server 192.168.61.1:9080 weight=1;
server 192.168.61.1:9090 weight=2;
check interval=3000 rise=1 fail=3 timeout=2000 type=http;
check_http_send "HEAD /status HTTP/1.0rnrn";
check_http_expect_alive http_2xx http_3xx;
}
HTTP心跳检查需要额外两个配置
1.check_http_send 检查时发送的HTTP请求内容
2.check_http_expect_alive 当上游服务器返回匹配的响应状态时,认为上游服务器存活
需要注意的是,间隔时间不能太短,否则可能因为心跳检查包太多造成上游服务器挂掉,同时要设置合理的超时时间。
最后
以上就是勤劳翅膀为你收集整理的Nginx对上游服务的心跳检测健康检查的全部内容,希望文章能够帮你解决Nginx对上游服务的心跳检测健康检查所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复