【问题标题】:Need input in analyzing GC Report在分析 GC 报告时需要输入
【发布时间】:2017-01-08 23:44:50
【问题描述】:

我正在尝试找出应用程序响应缓慢的原因。我需要一些关于 GC 日志的输入。我分析了日志,发现在大约 2 小时的时间里,Minor GC 运行了 3363 次,回收了大约 60 GB。 GC 间隔平均时间约为 2 秒,并发模式失败了一次。

这些事情在任何企业应用程序中都是正常的吗? Full GC 计数为 8,平均时间为 28ms。我还应该在 GC 日志中检查什么?

使用的JVM参数:

-XX:MaxPermSize=256m -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:ParallelGCThreads=4

如果有帮助,以下是分析报告的网址:

http://gceasy.io/my-gc-report.jsp?p=c2hhcmVkLzIwMTYvMDkvMS8tLXRlc3QubG9nLS0xMS00NS0xNw==

【问题讨论】:

  • 这取决于你到底在寻找什么,从 GC 图来看,我觉得一切都很好......
  • 您使用哪个版本的 JDK?为什么要检查 GC,生产中是否遇到问题?
  • Java 版本“1.6.0_45”。是的,它正在生产中发生,作为一种解决方法,我们每 2 小时重新启动一次应用程序。
  • 标题写着“正在分析GC日志”,但是你还没有发布日志。

标签: java memory-leaks garbage-collection jvm


【解决方案1】:

看起来 GC 没有问题,所以也许你可以使用 VisualVM + VisualGC 插件来获得有关线程的更多详细信息,并查看时间花费在哪个方法上。

增加 -Xmx 看看以后会不会变慢。

【讨论】:

    猜你喜欢
    • 2016-09-17
    • 2023-03-13
    • 2017-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    相关资源
    最近更新 更多