java - 致命异常后自动重启 Spring Boot 应用程序

标签 java spring spring-boot

node.js 世界中,有像 Supervisor 这样的应用程序 - 它是一个守护进程,检查您的应用程序是否正在运行,如果没有(关闭,崩溃),它立即重新启动它。当一个功能可能失败但系统的其余部分仍在运行时,这是临时处理生产中的严重错误的非常好的方法。

我来自 PHP 背景,您所要做的就是在浏览器中按下 back 按钮,当出现问题时。

如何在 Spring Boot 中实现这种行为?到目前为止,我注意到的是,当应用程序面临未处理的异常时,它会崩溃并且整个服务器都已关闭。我知道这类错误应该尽快修复,但有时这是不可能的,系统需要运行。 有没有像 Node.js supervisor 这样工作的工具?

最佳答案

过去我有时使用 Java Wrapper by Tanuki效果很好。否则,您确实可以选择监视进程并在失败时自动重启(取决于您的系统环境),或者在应用程序的最高级别捕获 Throwable,这不是一个好主意,因为您会捕获致命的情况通过意图应该杀死你的jvm执行,例如内存不足...

关于java - 致命异常后自动重启 Spring Boot 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27401346/

相关文章:

java - cronTrigger 的配置(使用 opensymphony quartz )

java - 从jtable获取值

java - 有没有办法根据数组内部包含的名称拆分 String ArrayList?

scala 解析器组合器中的 Java 正则表达式

java - 有条件地忽略 Jackson 的原始类型字段

java - 使用 AccessType.PROPERTY 对 JPA 实体属性调用清除失败

java - 连接对象返回空值

java - 我们何时以及为什么需要 ApplicationRunner 和 Runner 接口(interface)?

java - Spring 启动 mongoDB jar

java - 如何在MVC项目中处理Spring Bean的继承