1、查看java进程:ps -ef|grep java
使用该命令可以详细的查出对应的java进程详细信息
2、使用jps命令,可以列出本机所有java进程的pid
3、jstat -gcutil pid 5000 ,以5秒的维度输出对应java进成的GC情况
参数说明如下:
S0: 新生代中Survivor space 0区已使用空间的百分比
S1: 新生代中Survivor space 1区已使用空间的百分比
E: 新生代已使用空间的百分比
O: 老年代已使用空间的百分比
P: 永久带已使用空间的百分比
YGC: 从应用程序启动到当前,发生Yang GC 的次数
YGCT: 从应用程序启动到当前,Yang GC所用的时间【单位秒】
FGC: 从应用程序启动到当前,发生Full GC的次数
FGCT: 从应用程序启动到当前,Full GC所用的时间
GCT: 从应用程序启动到当前,用于垃圾回收的总时间【单位秒】
4、主动触发FullGC:jmap -histo:live pid
5、获取jvm配置详细信息命令:jinfo pid
6、堆栈使用情况:jmap -F -heap pid
7、对应进程对象占用较多的取30个:jmap -histo:live 524660 | head -30
8、使用jstack分析线程状态,可以按照如下步骤命令:
(1)、可以通过top命令查看各个进程的cpu使用情况,默认按cpu使用率排序
(2)、找到占用cpu较高的pid
(3)、可以查看该进程下各个线程的cpu使用情况:top -Hp pid
(4)、输出对应pid十六进制:printf "%x\n" pid
(5)、查看该线程堆栈:jstack -l 310962 | grep pid的十六进制数据 -A20
(6)、也可以使用如下命令查看详细信息:jstack -l 310962 | more
9、jmap输出dump文件,用来对应分析详细信息
jmap -dump:live,format=b,file=heap4.hprof pid
10、可能会用到的查看当前文件夹容量的命令:du -sh *