如果Root上下文初始化失败,自动停止Tomcat

我似乎无法弄清楚是否可以设置Tomcat停止当ROOT上下文初始化失败。 由于我的Tomcat实例只作为ROOT上下文托pipe一个应用程序,因此如果此Web应用程序的初始化失败,保持Tomcat运行在空闲状态是没有意义的。

我知道这不是最佳的做法,例如基于Spring Boot的微服务架构提供了这种开箱即用的function,但我们现在不能迁移到Spring Boot。 不过,我需要某种自动故障处理,因为我们绑定到Docker图像,如果在容器内发生了致命事件(容器退出),我希望在容器级别上看到它。

你可以有一些parsingcrontab中的日志(并寻找特定的根初始化),然后停止服务或发送电子邮件。 安全和易于实施。

我find了一个优雅的解决scheme。 由于我们使用maestro-ng来编排Docker容器,我们可以使用它的生命周期检查来等待Web服务的已知端点返回HTTP 200 OK,然后再转到下一个容器。 如果这种情况没有得到满足,我们可以放心地认为出了问题。