首页 > 其他 > 详细

JDK常用命令

时间:2019-02-05 20:25:21      阅读:259      评论:0      收藏:0      [点我收藏+]

1、jps

查看java进程,得到进程ID:7854

技术分享图片

作用等同于:ps -ef | grep java

技术分享图片

2、jstat

监视虚拟机各种运行态信息

常用: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中的程序

JDK常用命令

原文:https://www.cnblogs.com/saiQsai/p/10353044.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!