一.概览
二.jstat用法
jstat -gcutil pid 1000 1000
jstat -gc pid 1000 1000
二.jmap用法
常用选项就 3 个:
-heap 打印堆内存(/内存池)的配置和 使用信息。
-histo 看哪些类占用的空间最多, 直方图。
-dump:format=b,file=xxxx.hprof Dump 堆内存。
演示:
jmap -heap pid
jmap -histo pid
jmap -dump:format=b,file=3826.hprof
三.jstack用法
-F 强制执行 thread dump,可在 Java 进程卡死 (hung 住)时使用,此选项可能需要系统权限。 -m 混合模式(mixed mode),将 Java 帧和 native 帧一起输出,此选项可能需要系统权限。
-l 长列表模式,将线程相关的 locks 信息一起输 出,比如持有的锁,等待的锁。
演示: jstack -l pid
四.jcmd用法
Jcmd 综合了前面的几个命令
示例:
jcmd pid VM.version
jcmd pid VM.flags
jcmd pid VM.command_line
jcmd pid VM.system_properties
jcmd pid Thread.print
jcmd pid GC.class_histogram
jcmd pid GC.heap_info
五.jrunscript/jjs
1.当 curl 命令用: jrunscript -e "cat('http://www.baidu.com')"
执行 js 脚本片段 jrunscript -e "print('hello,kk.jvm'+1)"
执行 js 文件 jrunscript -l js -f /XXX/XXX/test.js
2.