nginx+tomcat集群,停止其中一个tomcat,请求有时候非常慢? 400 报错
现在配置了两个tomcat ,nginx配置权重一样,当停止其中一个tomcat后就出现很慢的情况,等几分钟才能加载完成,感觉是一直在请求停止的那个tomcat,有没有配置使tomcat其中一个停止后,马上请求另一个tomcat呢?谢谢!
修改完ngnix配置后,reload了吗?
######nginx的健康检查机制是被动的
当流量分发给了失败的节点后,默认会重试一次,然后标记节点为失败,再然后将流量重新分发给健康的节点.10秒后重复上述操作.
这样会导致流量频繁分发给失败节点,然后重新分发,中间间隔10秒,也就是"抽风" .
改善的办法是提高重试间隔,比如300秒,也就是5分钟抽风一次,情况得到些许缓解.
upstream xxx {
...
server 1.2.3.4:8080 max_fails=1 fail_timeout=300;
...
}
根本解决办法是采用主动健康检查机制,这需要nginx收费版,或第三方插件,
也可以使用tengine这类nginx衍生版.
望采纳!
######nginx的健康检查机制是被动的
当流量分发给了失败的节点后,默认会重试一次,然后标记节点为失败,再然后将流量重新分发给健康的节点.10秒后重复上述操作.
这样会导致流量频繁分发给失败节点,然后重新分发,中间间隔10秒,也就是"抽风" .
改善的办法是提高重试间隔,比如300秒,也就是5分钟抽风一次,情况得到些许缓解.
upstream xxx {
...
server 1.2.3.4:8080 max_fails=1 fail_timeout=300;
...
}
根本解决办法是采用主动健康检查机制,这需要nginx收费版,或第三方插件,
也可以使用tengine这类nginx衍生版.
望采纳!
嗯,谢谢
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。