如何从这些分析器结果中得出结论

时间:2012-10-27 15:00:37

标签: java garbage-collection profiling heap-memory

我正在使用mule 2.2.1独立服务器并使用yourkit对其进行分析。我正在尝试分析剖析器的输出,如果有人可以帮助阅读结果,我会很感激。

大约99%的堆空间被String消耗,char []这是正常的吗?我应该调查一下吗?

PS旧Gen消耗了使用的3.4 GB总空间中的2.7 GB。我该怎么解释这个?它永远不会

在GC部分,它告诉我它在GC中花费了20%的时间但是我没有看到任何次要或主要的收藏品,我应该怎么看?

Memory consumption

GC behavior

由于

1 个答案:

答案 0 :(得分:3)

About 99% of the heap space is consumed by String and char[] is this normal ?

您应该打开参考屏幕并检查谁持有这些Stringschar[]如果是某些应用程序类,它肯定是异常的。在这种情况下,重新访问您的代码并确保您的对象引用被释放以进行垃圾回收。

The PS Old Gen consumes 2.7 GB of the total 3.4 GB heap space used.

使用的这么多堆空间不会在前面发出声音。如果您有大量应用程序并通过设计缓存大量数据,那么它可能没问题。如果没有,您的对象引用应该为您提供why的清晰图片。一旦你了解原因(不需要的对象引用),然后清除它们。

可能的内存泄漏:

在非内存泄漏屏幕中,它不是很清晰,但看起来像图最终(整体)上升。请稍微检查一下您的数据,忽略尖峰并确保它不会上升。如果它正在上升,那么应用程序代码中可能存在一些内存泄漏。

希望这有帮助。