提问人:Nathan 提问时间:9/8/2023 更新时间:9/8/2023 访问量:39
如何调试导致 Helidon 服务器突然关闭的 SIGTERM
How to Debug a SIGTERM that Causes Abrupt Helidon Server Shutdown
问:
一个简单的 Java 程序捕获并启动 JVM 关闭钩子(即 )。当钩子完成时,JVM 将干净地关闭。kill -SIGTERM
Runtime.addShutdownHook()
一个简单的 Helidon 服务器有一个 JVM 关闭钩子,以确保干净地关闭。Netty停止倾听。我有 、 和 JVM 关闭钩子,它们只是记录一条消息。钩子记录并完成。服务器和 JVM 完全关闭。CDI
@BeforeDestroyed
@Destroyed
我有一个更复杂的 Helidon 服务器。我有监视特殊删除文件的代码。当我创建删除文件时,代码会检测到该文件并启动关闭。我看到来自 Netty、 、 和 JVM 关闭钩子的日志消息。服务器和 JVM 完全关闭。关机需要 1.011 秒。@BeforeDestroyed
@Destroyed
当我发送到复杂的 Helidon 服务器时,服务器突然停止。Netty 不会关闭。不调用钩子。服务器将在几毫秒内退出。kill -SIGTERM
如何调试服务器突然退出的原因?什么可能导致服务器在收到 ?SIGTERM
我可以在 Windows(使用 Cygwin 的杀戮)和 Linux 上重现这个问题。
答: 暂无答案
评论
Runtime.halt