美文网首页
springboot通过shutdown进程依然存活的问题

springboot通过shutdown进程依然存活的问题

作者: captain_fu | 来源:发表于2018-01-11 11:15 被阅读0次

    背景:

    前几个月在组内一个小项目的基础上,进行了springboot的改造。在关闭springboot应用的时候,根据日志确认应用确实被关停,但是应用相关的进程还是存活。

    问题:

    通过springboot官方推荐的方式调用shutdown的url,在我的应用中是 "http://ip:port/shutdown",关闭springboot应用,应用正确停止,服务下线。但是再次grep进程,发现进程还是存活。

    分析过程:

    1. 怀疑是springboot的版本问题,从1.3.2升级到1.5.8一直到最新的1.5.9,发现现象还是完全一样,进程依然存活。

    2. 在stackoverflow上提了相关问题,经高人指点,找到了这篇(本人提的问题内容和以下问题重复,已经关闭了问题)。https://stackoverflow.com/questions/31788332/should-the-spring-boot-shutdown-endpoint-shut-down-the-entire-jvm-process-or-ju

    3. 本人大概翻译下(如理解有错误,大家可以指出):调用springboot应用的shutdown的url停止应用,如果应用中的依赖中存在ScheduledExecutor没有被应用上下文关闭,这个对象会使JVM保持存活,需要在代码中显示关闭对应的ScheduledExecutor。

    相关文章

      网友评论

          本文标题:springboot通过shutdown进程依然存活的问题

          本文链接:https://www.haomeiwen.com/subject/ngsznxtx.html