在 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/