javagc常用命令总结
1、查看java进程
ps -ef|grep java
使用该命令可以详细的查出对应的java进程详细信息
2、使用jps命令
可以列出本机所有java进程的pid
3、jstat-gcutilpid5000
以5秒的维度输出对应java进成的gc情况
参数说明如下:
- s0:新生代中survivorspace0区已使用空间的百分比
- s1:新生代中survivorspace1区已使用空间的百分比
- e:新生代已使用空间的百分比
- o:老年代已使用空间的百分比
- p:永久带已使用空间的百分比
- ygc:从应用程序启动到当前,发生yanggc的次数
- ygct:从应用程序启动到当前,yanggc所用的时间【单位秒】
- fgc:从应用程序启动到当前,发生fullgc的次数
- fgct:从应用程序启动到当前,fullgc所用的时间
- gct:从应用程序启动到当前,用于垃圾回收的总时间【单位秒】
4、主动触发fullgc
jmap-histo:livepid
5、获取jvm配置详细信息命令
jinfopid
6、堆栈使用情况
jmap-f-heappid
7、对应进程对象占用较多的取30个
jmap-histo:live524660|head-30
8、使用jstack分析线程状态
可以按照如下步骤命令:
- (1)、可以通过top命令查看各个进程的cpu使用情况,默认按cpu使用率排序
- (2)、找到占用cpu较高的pid
- (3)、可以查看该进程下各个线程的cpu使用情况:top-hppid
- (4)、输出对应pid十六进制:printf"%x\n"pid
- (5)、查看该线程堆栈:jstack-l310962|greppid的十六进制数据-a20
- (6)、也可以使用如下命令查看详细信息:jstack-l310962|more
9、jmap输出dump文件
用来对应分析详细信息
jmap -dump:live,format=b,file=heap4.hprof pid
10、可能会用到的查看当前文件夹容量的命令
du-sh*
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论