首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HA Tomcat集群:崩溃后启动节点

HA Tomcat集群:崩溃后启动节点
EN

Stack Overflow用户
提问于 2015-05-26 11:00:19
回答 1查看 319关注 0票数 0

我想在nginx反向代理后面运行一个tomcat (v7)集群。在我的测试环境中,我使用会话复制设置了tomcat集群(2个节点A/B),并将nginx设置为反向代理(循环)。

当两个节点(A和B)运行时,nginx将通过循环传递请求。

  • 第一次请求=>节点A
  • 第二次请求=>节点B
  • 第三次请求=>节点A ..。

一切正常工作,即使当我停止一个tomcat节点(节点B)。

  • 第一次请求=>节点A
  • 第二次请求=>节点A
  • 第三次请求=>节点A ..。

现在的问题是:当我启动一个节点B(例如,在重新启动机器之后),nginx尝试将第二个请求转发到节点B,但是它需要几分钟才能启动(节点正在执行~300个应用程序,因此它需要20分钟来启动),而节点B上的tomcat正在响应这个请求,但是不能将应用程序显示给客户机。所以每一次请求都会以超时结束..。

是否有任何方法配置tomcat,在完成启动过程之前停止应答请求?

EN

回答 1

Stack Overflow用户

发布于 2016-10-13 13:54:30

您需要适当地配置nginx健康检查。有几个扩展(例如module)允许为helth端点指定url

一个可能的解决方案可能是:在所有应用程序中添加健康端点,创建并部署一个health-management-app,它将要求所有应用程序保持健康(就绪),并在所有已部署的应用程序获得肯定答案后立即返回健康状态。

这只是一个想法,但希望它能帮助你。

这个想法是借鉴自弹簧启动-执行器框架。它具有/management/health端点,如果依赖于其他服务(例如mongodb或elasticsearch),则只在所有响应都为正的情况下才要求所有服务保持健康,并返回正状态。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30456640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档