【问题标题】:How to analyze a memory leak in Java 1.3如何分析 Java 1.3 中的内存泄漏
【发布时间】:2013-01-23 15:24:25
【问题描述】:

我有一个 WebLogic 7 服务器,在 Solaris 平台上的 j2sdk1_3 下运行。 从 Java5 开始,我知道 jmap 命令对于分析和排除内存泄漏非常有用。

有没有类似的工具可以用在 Java 1.3 上?

【问题讨论】:

  • 能否更新到更新版本的 JDK,即使是在测试平台上进行诊断?
  • 不,因为泄漏似乎只发生在无法在测试环境中重现的非常高的负载上。我可能在我的代码中发现了问题,并且已经进行了修复,但是我需要一个工具来分析内存并在系统崩溃之前采取预防措施。
  • 可能是在负载下服务器跟不上它需要的 GC。自 Java 1.3 以来(过去十年)已经修复了很多错误,我不认为这不是 JVM 中的错误。顺便说一句,如果你能提供帮助,我不会更新到 Java 5.0 或 6,而是升级到 Java 7,或者等待今年应该发布的 Java 8。

标签: java memory memory-leaks weblogic solaris


【解决方案1】:

-Xrunhprof 选项在1.3 JVM executable 上可用。当 JVM 退出时(无论是否由于内存不足),这将生成 ASCII 或二进制格式的堆转储。如果你有现代化的开发机器,相信你可以使用jhat来读取二进制格式。如文档中所述,java -Xrunhprof:help 会告诉您选项是什么。

【讨论】:

    猜你喜欢
    • 2013-05-24
    • 1970-01-01
    • 1970-01-01
    • 2012-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-02
    • 1970-01-01
    相关资源
    最近更新 更多