
讲解JVM的常用命令,为后面讲解JVM日志分析做准备。
往期精选(欢迎转发~~)
前言
JVM比较重要的知识,在前面三篇文章都将完了,GC日志在第一篇文章中也有所提及,这篇文章主要讲解JVM常用的命令,虽然jvm调优成熟的工具已经有很多,但是所有的工具几乎都是依赖于jdk的接口和底层的这些命令,研究这些命令的使用也让我们更能了解jvm构成和特性。
Sun JDK监控和故障处理命令有jps、jstat、jmap、jhat、jstack、jinfo,下面做一一介绍。
jps
JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程。
命令格式:
jps [options] [hostid]
option参数:
-
-l : 输出主类全名或jar路径
-
-q : 只输出LVMID
-
-m : 输出JVM启动时传递给main()的参数
-
-v : 输出JVM启动时显示指定的JVM参数
示例:
82518 sun.tools.jps.Jps -l -m
69981 /Users/mengloulv/Library/Application Support/JetBrains/IntelliJIdea2020.1/plugins/idea-spring-tools/lib/server/language-server.jar
79213 org.apache.catalina.startup.Bootstrap start
79212 org.jetbrains.jps.cmdline.Launcher /Applications/IntelliJ IDEA.app/Contents/lib/asm-all-7.0.1.jar:xxx...
jstat
jstat(JVM statistics Monitoring)是用于监视虚拟机运行时状态信息的命令,它可以显示出虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据。
详见:https://docs.oracle.com/javase/7/docs/technotes/tools/share/jstat.html#gcnew_option
jstat介绍
jstat命令命令格式:
jstat [Options] vmid [interval] [count]
命令参数说明:
Options,一般使用 -gcutil 或 -gc 查看gc 情况
pid,当前运行的 java进程号
interval,间隔时间,单位为秒或者毫秒
count,打印次数,如果缺省则打印无数次
Options 参数如下:
-gc:统计 jdk gc时 heap信息,以使用空间字节数表示
-gcutil:统计 gc时, heap情况,以使用空间的百分比表示
-class:统计 class loader行为信息
-compile:统计编译行为信息
-gccapacity:统计不同 generations(新生代,老年代,持久代)的 heap容量情况
-gccause:统计引起 gc的事件
-gcnew:统计 gc时,新生代的情况
-gcnewcapacity:统计 gc时,新生代 heap容量
-gcold:统计 gc时,老年代的情况
-gcoldcapacity:统计 gc时,老年代 heap容量
-gcpermcapacity:统计 gc时, permanent区 heap容量
jstat使用示例
示例 1:jstat -gc 15 5000 5
每5秒一次显示进程号为15的java进程的GC情况,每5S生成异常,一共生成5次。
S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT GCT
307200.0 307200.0 24333.5 0.0 2457600.0 945456.5 5120000.0 3462367.2 241360.0 209218.1 26120.0 20538.3 6642 531.164 20 6.874 538.038
307200.0 307200.0 24333.5 0.0 2457600.0 945513.4 5120000.0 3462367.2 241360.0 209218.1 26120.0 20538.3 6642 531.164 20 6.874 538.038
307200.0 307200.0 24333

本文详细介绍了JVM的常用命令,包括jps、jstat、jmap、jhat和jstack,旨在帮助读者更好地理解JVM的工作原理和性能监控。通过示例展示了每个命令的具体用法,例如jstat的GC统计和jmap的堆内存dump,以及jhat的堆分析等,为JVM日志分析和调优打下基础。
最低0.47元/天 解锁文章
9万+

被折叠的 条评论
为什么被折叠?



