jhat——JDK 自带堆分析工具

清疚 2022-09-07 05:57 273阅读 0赞

一 点睛

jhat(JVM Heap Analysis Tool):Sun JDK 提供的 jhat 命令与 jmap 命令搭配使用,用于分析 jmap 生成的 heap dump 文件(堆转储快照)。jhat 内置了一个微型的 HTTP/HTML 服务器,生成 dump 文件的分析结果后,用户可以在浏览器中查看分析结果(分析虚拟机转储快照信息)。

使用了 jhat 命令,就启动了一个 http 服务,端口是 7000,即 http://localhost:7000/,就可以在浏览器里分析。

说明:jhat 命令在 JDK9、JDK10 中已经被删除,官方建议用 VisualVM 代替。

基本适用语法:jhat








































option 参数

作用

-stack false | true

关闭|打开对象分配调用栈跟踪

-refs false | true

关闭|打开对象引用跟踪

-port port-number

设置 jhat HTTP Server 的端口号,默认 7000

-exclude exclude-file

执行对象查询时需要排除的数据成员

-baseline exclude-file

指定一个基准堆转储

-debug int

设置 debug 级别

-version

启动后显示版本信息就退出

-J<flag>

传入启动参数,比如-J-Xmx512m

二 实战

  1. F:\svn\19_byzb_back\branches\JVMDemo3>jhat d:\3.hprof
  2. Reading from d:\3.hprof...
  3. Dump file created Sun Aug 22 10:43:06 CST 2021
  4. Snapshot read, resolving...
  5. Resolving 15305 objects...
  6. Chasing references, expect 3 dots...
  7. Eliminating duplicate references...
  8. Snapshot resolved.
  9. Started HTTP server on port 7000
  10. Server is ready.

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW5ncWl1bWluZw_size_16_color_FFFFFF_t_70

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW5ncWl1bWluZw_size_16_color_FFFFFF_t_70 1

发表评论

表情:
评论列表 (有 0 条评论,273人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JDK中的JVM分析工具

    一、业务背景 对于分布式架构中的文件服务来说,由于涉及大量的IO流操作,很容易引发JVM的相关异常,尤其是内存溢出的问题; ![format_png][] 在最近的一

    相关 mysql备份还原工具

    mysql自带的mysqldump备份工具,将制定的数据库或表导出都一样的sql文件,以便备份或数据还原,但如果数据量很大,会耗费会很长时间,且锁表。 对于大规模备份,考虑使用