是否有任何工具可以对.hprof文件进行离线分析(包括摘要/排序/筛选)?或者你可以批处理模式运行VisualVM,hat等吗?
我对可以输入.hprof文件,处理它并生成报告的内容感兴趣。
我认为您需要传递一系列选项来配置报告,所以如果您知道任何有用的提示,请权衡。
最好是可编写脚本的,这样我就可以一次运行一堆。
答案 0 :(得分:19)
Eclipse Memory Analyzer可以完成您需要的一切。
答案 1 :(得分:11)
您可以使用jhat来解析/导航.hprof
文件的内存转储。
$ jhat heapdump.hprof
Reading from heapdump.hprof...
Started HTTP server on port 7000
Server is ready.
该工具随JDK一起提供。
答案 2 :(得分:2)
难以击败yourkit java profiler。这需要花钱,但值得每一分钱。
答案 3 :(得分:1)
你能使用jmap -histo吗?您希望提取哪种报告?
答案 4 :(得分:0)
Es MAT(http://www.eclipse.org/mat/)是要走的路。查看http://kohlerm.blogspot.com/search/label/memory,尤其是http://kohlerm.blogspot.com/2009/07/eclipse-memory-analyzer-10-useful.html
答案 5 :(得分:0)
JDK6附带了解析和创建html报告的jhat。
http://docs.oracle.com/javase/6/docs/technotes/tools/share/jhat.html
答案 6 :(得分:0)
此外,如果您使用IntelliJ IDEA,则也可以打开* .hprof内存快照:打开Profiler快照|打开
官方文档:https://www.jetbrains.com/help/idea/analyze-hprof-memory-snapshots.html