java cpu_JAVA定位CPU占用率高

通过top命令定位到CPU占用率高的Java进程,再使用jstack打印进程信息,结合jstat分析内存使用,发现可能是内存不足或泄露导致GC线程持续运行,最后分析jstack日志找到具体线程问题。
摘要由CSDN通过智能技术生成

一、top命令定位cpu占用率高的进程号(pid),找到pid后,top -p pid -H,记录出cpu占用率高的线程号(tid),用printf "%x\n" tid将其转换为16进制

二、使用jstack打印进程信息,为准确定位可以多来几次,jstack pid > pid_1.log

三、打开日志文件,找到十六进制的线程信息,可定位到具体类的某一行。

示例

1、

1 Tasks: 546 total, 1 running, 544 sleeping, 0 stopped, 1zombie2 Cpu(s): 15.3%us, 0.1%sy, 0.0%ni, 84.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st3 Mem: 24633804k total, 23710152k used, 923652k free, 784472k buffers4 Swap: 32764556k total, 127120k used, 32637436k free, 7000668k cached5

6 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+COMMAND7 25930 weblogic 18 0 5311m 4.5g 29m S 488.1 19.3 35663:17java8 16830 weblogic 15 0 13168 1472 824 R 0.7 0.0 0:00.04top9 13834 weblogic 16 0 13028 1424 812 S 0.3 0.0 5900:50top10 17263 weblogic 23 0 2410m 1.5g 28m S 0.3 6.2 390:24.31java11 17438 weblogic 25 0 3429m 1.7g 25m S 0.3 7.2 217:35.39java12 26316 weblogic 23 0 4695m 2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值