cpu占用高

任务线程bug、内存泄露导致频繁gc

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# 1. 查线程ID
top -H -p 进程ID

# 2. 转十六进制
printf "%x\n" 线程ID

# 看线程日志
jstack 进程ID | grep 线程ID十六进制 -A 30

# 看gc次数(内存利用率>96% YGC>7000),Eclipse Memory Analyzer分析
jstat -gc 进程ID
jmap -dump:format=b,file=/dump.hprof 进程ID

# 计算gc频率(etime分钟/gc次数)分钟一次
ps -eo pid,tty,user,comm,lstart,etime | grep 进程ID

参考

jwentao01