gpt4 book ai didi

java - 将 SIGTERM 发送到 JVM 是否安全

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:36:05 24 4
gpt4 key购买 nike

尽管 JVM 会 translate SIGTERM and similar signals to shutdown hooks ,许多服务关闭脚本使用 TCP 端口来启动关闭。 (例如Tomcat的关闭端口、Java Service Wrapper、JBoss的管理接口(interface)等)

所以我认为不鼓励使用信号和关闭 Hook 来优雅地关闭 java 服务,直到我发现 Play! framework is managing the service lifecycle with shutdown hooks并且 play dist 生成的启动脚本假定信号将发送到 JVM 的 PID。

我知道信号是平台相关的,使用 TCP 端口是一种简单且可扩展的跨平台管理服务的方式,但我想知道它有多安全以及我需要考虑哪些风险,当我依赖 SIGTERM 和关闭 Hook 作为关闭服务的主要方法时。

最佳答案

只要Java服务明智地使用ShutdownHooks来有序终止,向JVM进程发送SIGTERM是没有问题的。例如。我们使用 SIGTERM 作为在我们的大型高负载生产系统(5000 多台服务器运行 80 种不同的 Java 应用程序)中启动应用程序关闭的主要方法。

关于java - 将 SIGTERM 发送到 JVM 是否安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24728586/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com