我正在尝试找出应用程序响应缓慢的原因。我需要一些关于 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
如果有帮助,以下是分析报告的 URL:
http://gceasy.io/my-gc-report.jsp?p=c2hhcmVkLzIwMTYvMDkvMS8tLXRlc3QubG9nLS0xMS00NS0xNw==
最佳答案
看起来GC没有问题,所以也许你可以使用VisualVM + VisualGC插件来了解有关线程的更多详细信息,看看哪个方法花费了时间。
增加 -Xmx 并查看稍后速度是否会变慢。
关于java - 分析 GC 报告时需要输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39265624/