【问题标题】:Recommendations for a heap analysis tool for Java? [closed]Java 堆分析工具的推荐? [关闭]
【发布时间】:2011-01-05 02:03:06
【问题描述】:

列出您最喜欢的堆分析工具(例如 jprofiler、jmap...)。 让我们为每个答案保留一个工具,并列出每种工具的优缺点。

【问题讨论】:

    标签: java memory profiling heap-memory


    【解决方案1】:

    Eclipse 内存分析器http://www.eclipse.org/mat/

    【讨论】:

    • 我知道这是从 10 年开始的,但任何人都知道识别内存泄漏的工具指向什么以及替换它的东西(如果有的话)?
    • @GREnvoy 该工具称为 sap jvm profiler,您应该可以在 google 上找到一些资源。不确定它是否被其他工具取代
    【解决方案2】:

    Java VisualVM,jvisualvm,包含在 JDK 中。检查了一个病理性的 Swing 程序here

    【讨论】:

    【解决方案3】:

    YourKithttp://www.yourkit.com/

    优点:

    • 界面简洁,速度快
    • 它打开了一个 5-gig 的大型堆转储,jProfiler 在此停止了操作。而且它只需要 1-2 gigs 的 JVM 内存就可以做到这一点。

    缺点: 当然......它不是免费的:(

    【讨论】:

    • 好吧,请注意,当您尝试使用 YourKit 打开 20GB 堆时,它在 OOME 上崩溃了,因此 YourKit 无法通过允许您使用商品 Macbook Pro 打开大堆来帮助您
    【解决方案4】:

    BHeapSampler http://dr-brenschede.de/bheapsampler/

    • 生成类级堆图,以非常直观地显示主要内存结构
    • 可以处理非常大的堆转储
    • 命令行工具,可在服务器端使用,无需将转储转移到开发人员的办公桌

    【讨论】:

    • 关闭源代码并通过 a.a() 混淆抛出一个奇怪的异常。看起来这个工具不起作用。
    猜你喜欢
    • 2010-09-10
    • 1970-01-01
    • 2010-09-13
    • 2011-01-26
    • 1970-01-01
    • 1970-01-01
    • 2012-05-01
    • 2011-06-02
    • 1970-01-01
    相关资源
    最近更新 更多