0

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

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

PS Old Gen 使用 3.4 GB 堆空间中的 2.7 GB。我应该如何解释这个?它从来没有

在 GC 部分它告诉我它在 GC 中花费了 20% 的时间,但是我没有看到任何次要或主要的集合,我应该如何阅读这个?

内存消耗

GC 行为

谢谢

4

1 回答 1

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. 一旦你了解了原因(不需要的对象引用),然后清除它们。

可能的内存泄漏:

在非内存泄漏屏幕中,它不是很清楚,但看起来图最终(总体)上升了。请在更长的时间内查看您的数据,忽略峰值,并确保它不会上升。如果它正在上升,那么您的应用程序代码中可能存在一些内存泄漏。

希望这可以帮助。

于 2012-10-27T15:12:51.097 回答