JVM常用命令

JDK命令

常用命令包括:
jps:查看java进行
jstat:查看运行状态数据
jinfo:查看虚拟机配置信息
jmp:存储快照,heapdump文件
jhat:用户分享jmp导出来的headdump文件,会建立一个链接从浏览器中查看结果
jstack:查看线程快照

jps

命令格式:jps [optional] [hostid]
option有:

  • -q 只输出ID忽略名称
  • -m 进程启动时传递给主类的参数
  • -l 输出全类名,如果是jar包输出路径
  • -v 输出启动时JVM参数


    image.png

    image.png

jstat

命令格式:jstat [optional vmid [interval [s|ms] [count]]]
optional有:

  • -class 监视类装载,卸载的数量,总空间及类装载使用的时间
  • -gc 监视java堆情况
  • -gccapacity 与-gc相同但输出主要关注Java堆中各个区域使用的最大/最小空间
  • -gcutil 与gc相同,但输出的是空间占用的百分比
  • -gcnew 监视新生代GC情况
  • -gcnewcapacity 与gcnew 想同,但主要关注最大和最小的使用空间
  • -gcold 监视老年代的gc情况
  • -gcoldcapacity 与gcold相同,但主要关注最大和最小的使用空间
  • -gcpermcapacity 监视永久代的使用情况
  • -complier输出编译过的方法和耗时信息
  • -printcompilation 输出已经被JIT编译的方法
    如:
    jstat -gcutil 1 1000 (每1s刷新一次)


    image.png

S0: Survivor space 0 utilization as a percentage of the space's current capacity. 幸存者区0

S1: Survivor space 1 utilization as a percentage of the space's current capacity. 幸存者区1

E: Eden space utilization as a percentage of the space's current capacity. 伊甸园区

O: Old space utilization as a percentage of the space's current capacity. 老年代

M: Metaspace utilization as a percentage of the space's current capacity. 元空间

CCS: Compressed class space utilization as a percentage. 压缩类空间利用率为百分比。

YGC: Number of young generation GC events. 年轻一代GC事件的数量。

YGCT: Young generation garbage collection time. 年轻一代垃圾收集时间

FGC: Number of full GC events. 完整的GC事件的数量。

FGCT: Full garbage collection time. 完全垃圾收集时间。

GCT: Total garbage collection time. 垃圾回收总时间

jmap

命令格式:jmap [optional] vimd
option有:

  • -dump生成快照
  • -finalizerinfo 显示在F-Quene中等待执行finalize方法的对象
  • -heap 显示java堆信息,包括,使用那种回收器,参数配置,分代情况
  • -histo 显示堆中对象统计信息
  • -F当-dump没有响应时使用它强制生成快照

如:jmap -dump:format=b,file=xxx.bin port

jstack

命令格式:jstack [optional] vmid
option包括

  • -F当正常的输出不被响应时,强制输出线程堆栈
  • -l显示锁的附加信息
  • -m显示C/C++的堆栈
    如:jstack -l port

你可能感兴趣的:(JVM常用命令)