java - 分析 GC 报告时需要输入

标签 java memory-leaks garbage-collection jvm

我正在尝试找出应用程序响应缓慢的原因。我需要一些关于 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/

相关文章:

java - 如何只替换标记,没有子字符串?

java - 如何在tomcat的服务器端进行调试?

开罗链接导致内存泄漏

java - 如何在 Java 中迭代特定类型的对象 ArrayList

java - 使用 Jsoup 从 HTML 获取多个表

java - JFrame 内存泄漏

macos - OpenGL Driver Monitor 表示纹理正在迅速增加。怎么找漏点?

java - SoftReference<String> 内存不足时未进行垃圾回收

java - 没有数据成员的类在java中有内存占用吗?

python垃圾收集器和列表