Java 分析远程大型堆转储

Java 分析远程大型堆转储,java,jvm,heap-dump,Java,Jvm,Heap Dump,我在远程Debian机器上有大约70 GB的Java堆转储,我无法在本地机器上使用MAT进行分析,虽然我可以以HTML页面的形式获得概述和可疑泄漏报告,但它们很简短,并且有href用于那些没有指向任何内容的对象(也许MAT并不意味着在那里创建实际链接,而只是为了设计样式) 但是,是否仍然需要完全分析该大小的堆转储?如果无法在该服务器上运行MAT,则可能需要运行jhat实用程序 它将在一个端口(您可以覆盖)上运行web服务器,并将提供一个名为OQL(对象查询语言)的web控制台和查询语言,您可以使

我在远程Debian机器上有大约70 GB的Java堆转储,我无法在本地机器上使用MAT进行分析,虽然我可以以HTML页面的形式获得概述和可疑泄漏报告,但它们很简短,并且有href用于那些没有指向任何内容的对象(也许MAT并不意味着在那里创建实际链接,而只是为了设计样式)


但是,是否仍然需要完全分析该大小的堆转储?

如果无法在该服务器上运行MAT,则可能需要运行
jhat
实用程序

它将在一个端口(您可以覆盖)上运行web服务器,并将提供一个名为OQL(对象查询语言)的web控制台和查询语言,您可以使用它来分析堆转储。它看起来有点像SQL

以下是一个例子:

jhat -J-Xmx32g -port 7000 <PATH_TO_HEAPDUMP>
jhat-J-Xmx32g-端口7000
然后在浏览器中访问:

http://<IP>:7000
http://:7000
有很多关于OQL的教程,是其中之一