我的应用程序垃圾收集器过去经常运行一个主要的项目,也许每天一次。但它突然停止工作了。现在它已经达到了 90%,我不得不重新启动应用程序几次。 这是在生产环境中,我允许做的是读取日志并通过提供的 UI 查看 JVM 状态。
我的另一个观察结果是,在过去 3 个月中,前 2 个月没有小型垃圾收集,但有很多大型垃圾收集。上个月没有大型收藏,但有许多小型收藏。
最佳答案
也许它永远不会进行主要收集,因为您在应用程序有机会之前就重新启动了它。
如果新空间大小合理,您应该会得到许多小型收藏品。
如果您只获取主要集合,则很可能您的 JVM 没有正确调整。我会尝试删除尽可能多的 GC 调整参数,并且仅在您知道有帮助的情况下才添加每个参数。设置太多调整参数是导致奇怪行为的好方法。
关于garbage-collection - JVM 主要垃圾收集数月未运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39645359/