JDK常用命令 | 您所在的位置:网站首页 › jdk命令有哪些 › JDK常用命令 |
1、jps
查看java进程,得到进程ID:7854 作用等同于:ps -ef | grep java 监视虚拟机各种运行态信息 常用:jstat -gcutil PID,监视java堆状况 远程机器上无法直接使用jstat命令,解决方法参考:https://wiki.sankuai.com/pages/viewpage.action?pageId=841802032 chroot --userspec=99:99 / sh -c 'jstat -gcutil 7854'的输出如下: S0:Survivor0区已使用空间的百分比 S1:Survivor1区已使用空间的百分比 E:Eden区已使用空间的百分比 O:老年代已使用空间的百分比 P:永久代已使用空间的百分比 YGC:从应用程序启动到采样时发生Young GC的次数 YGCT:从应用程序启动到采样时Young GC所用的时间(单位秒) FGC:从应用程序启动到采样时发生Full GC的次数 FGCT:从应用程序启动到采样时Full GC所用的时间(单位秒) GCT:从应用程序启动到采样时发送GC的总时间(单位秒) 3、jstack生成虚拟机当前时刻的线程快照 jstack PID | grep 16进制线程ID查看线程信息 比如要到java进程中最消耗CPU的那个线程的信息: (1)top -Hp 7854 找到最耗CPU的线程ID是7975 (2)printf '%x\n' 7975 把该线程ID转为16进制,为1f27 (3)chroot --userspec=99:99 / sh -c 'jstack 7854 | grep -A 20 1f27' 输出线程的堆栈信息 可以看到是cat中的程序 |
CopyRight 2018-2019 实验室设备网 版权所有 |