对 Java 堆分析工具的推荐?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/2064427/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Recommendations for a heap analysis tool for Java?
提问by ripper234
List your favorite heap analysis tools (e.g. jprofiler, jmap, ...). Let's keep it one tool per answer, with a short list of pros and cons for each tool.
列出您最喜欢的堆分析工具(例如 jprofiler、jmap 等)。让我们为每个答案保留一个工具,并列出每个工具的优缺点。
采纳答案by nanda
YourKit: http://www.yourkit.com/
YourKit: http://www.yourkit.com/
Pros:
优点:
- The interface is clean and it's fast
- It opened a large 5-gig heap dump where jProfiler grined to a halt. And it only needed 1-2 gigs of JVM ram to do so.
- 界面干净,速度快
- 它打开了一个大的 5-gig 堆转储,jProfiler 笑着停了下来。它只需要 1-2 个 JVM ram 就可以做到这一点。
Cons:Of course... it's not free :(
缺点:当然......它不是免费的:(
回答by trashgod
回答by dparnas
Eclipse Memory analyzer http://www.eclipse.org/mat/
Eclipse 内存分析器http://www.eclipse.org/mat/
- Support for multiple JVMs
- Help with identifying sources for memory leaks (see http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/6856)
- Open source and actively developed by major vendors (SAP and IBM)
- Part of Galileo release of Eclipse
- 支持多个 JVM
- 帮助识别内存泄漏的来源(参见http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/6856)
- 开源并由主要供应商(SAP 和 IBM)积极开发
- Eclipse Galileo 版本的一部分
回答by Arndt
BHeapSampler http://dr-brenschede.de/bheapsampler/
BHeapSampler http://dr-brenschede.de/bheapsampler/
- generates a class-level heap-graph as a really intuitive display of the dominant memory structures
- can process really large heap dumps
- command-line tool, usable on server side without transfering the dump to the developer's desk
- 生成一个类级别的堆图作为主要内存结构的非常直观的显示
- 可以处理非常大的堆转储
- 命令行工具,可在服务器端使用,无需将转储传输到开发人员的桌面