虚拟机性能监控与故障处理工具
https://www.cnblogs.com/chanshuyi/p/jvm_serial_15_jdk_monitor_command.html
1、jps:虚拟机进程状况工具
类似ps命令,可以查看虚拟机执行主类名称以及这些进程的本地虚拟机唯一ID(Local Virtual Mechine Identifier, LVMID)
jps [ option ] [ hostid ]
-m 主类接收的参数
-v 虚拟机接收的参数
-l 打印主类的全名
-q 省略主类的名称
2、jstat:虚拟机统计信息监视工具
在纯文本状态下监视虚拟机状态的变化
用的较多的就是-gcutil
,关注已使用空间占总空间的百分比
jstat [ option vmid [interval[s|ms] [count]] ]
//jstat -gcutil 2764 1000 10
//每秒执行一次,一共执行10次
3、jinfo:Java配置信息工具
实时查看和调整虚拟机的各项参数
jinfo [ option ] pid
//jinfo -flag UseSerialGC 2764
//输出: -XX:-UseSerialGC
//jinfo -flag [+/-]option pid
//和参数设置-XX:[+/-]option作用一样
4、jmap:java内存印象工具
jmap用于生成堆转储快照(一般称为heapdump或dump)
jmap [ option ] vmid
//jmap -dump:[live, ]format=b, file=<filename> vmid
//这里的live子参数说明是否只dump出存活的对象
5、jhat:虚拟机堆转储快照分析工具
jhat与jmap搭配使用
jhat <filename>
其内置的http服务器可以让分析结果在浏览器中查看
6、jstack:Java堆栈跟踪工具
用于生成虚拟机当前时刻的线程快照(一般为threaddump或者javacore文件)。
线程快照指的是当前虚拟机内每一条线程正在执行的方法堆栈的集合。
目的是定位线程出现长时间停顿的原因,如线程死锁、死循环、请求外部资源导致的长时间等待等。
jstack [ option ] vmid
7、JConsole:Java监视与管理控制台
内存监控、线程监控等