天天看点

JVM性能调优监控工具 - jhatjhat - Java Heap Analyse Tool

jhat - Java Heap Analyse Tool

分析java堆(dump文件),可以将堆中的对象以html的形式显示出来,包括对象的数量,大小等等,并支持对象查询语言

jhat [-stack <bool>] [-refs <bool>] [-port <port>] [-baseline <file>] [-debug <int>] [-version] [-h|-help] <file>

[options]
-J<flag>            -- 在启动JVM时传入一些启动参数,如果需要使用多个JVM启动参数,则传入多个-J<flag>
-stack false|true   -- 关闭对象分配调用栈跟踪,如果分配位置信息在堆转储中不可用则必须将此标志设置为false,默认值为true
-refs false|true    -- 关闭对象引用跟踪,默认值为true,默认情况下,返回的指针是指向其他特定对象的对象,如反向链接或输入引用,会统计/计算堆中的所有对象
-port <port>        -- 设置jhat HTTP server端口号,默认值7000
-exclude <file>     -- 指定对象查询时需要排除的数据成员列表文件。例如,如果文件列列出了java.lang.String.value,那么当从某个特定对象Object o计算可达的对象列表时,引用路径涉及java.lang.String.value的都会被排除。
-baseline <file>    -- 指定一个基准堆转储。在两个heap dumps中有相同object ID的对象会被标记为不是新的。其他对象被标记为新的。在比较两个不同的堆转储时很有用
-debug <int>        -- 设置debug级别,0表示不输出调试信息,值越大则表示输出更详细的debug信息
-version            -- 启动后只显示版本信息就退出
-h | -help          -- 打印辅助信息
           
jhat -port 7000 heap.bin
           

https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jhat.html

https://www.cnblogs.com/myna/p/7590620.html