jps:JVM Process Status Tool,显示指定系统内所有的虚拟机进程。
对我来说,每天都会用到的命令。可查看进程ID,使用Kill Pid ,快速关闭项目。
1.jps -l :输出主类的全名
2.jps -v:输出虚拟机启动时的就VM参数
jstat:虚拟机统计信息监视工具,用于监视虚拟机各种运行状态信息的命令行工具
1.jstat -gcutil pid:已使用空间和占用空间的百分比:各代已用空间,GC时间合计。S0,S1,E 指的是新生代,O指的是老年代,P指的是永久代,YGC:年轻代回收次数,YGCT:回收耗时,FGC:Full GC次数,FGCT:Full GC 时间,GCT:总耗时
2.jstat -gc 22441:已使用空间,GC时间合计
S0C:C的含义是commit,代表S0 目前分配的内存。S0U:U的含义,是use,代表S0已使用的内存。
3.jstat -gccapacity pid:java堆各个区域使用到的最大,最小空间。
4.jstat -gccause pid:会输出上一次gc原因
jinfo:实时查看,和修改虚拟机各项参数
1.jinfo - flags pid:查看JVM配置信息
2.jinfo -flag 参数 pid:查看某项参数的配置信息
jmap:java内存映像工具
1.jmap -dump:format=b,file=文件名 pid:生成Java快照工具
2.jmap -hiso pid:类信息,容量
jhat:配合jmap的分析工具,用的不多。
jstack:用于生成当前线程的快照
1.jstack -f pid:无响应时,强制输出
2.jstack -l pid:除堆栈外,显示锁的附加信息
3.jstack -m pid:调到本地方法时,显示C/C++ 堆栈信息
还有不少其他命令,但是都用得不多,可以简单了解一下。