top查看是否是java进程占用内存最高
]# top
top - 18:26:43 up 5:23, 2 users, load average: 0.00, 0.01, 0.04
...
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
870 root 20 0 148504 2308 1448 R 0.3 0.2 0:00.04 java
ps查看java线程
]# ps -p 2962 -L -o pcpu,pmem,pid,tid,tname,cmd
%CPU %MEM PID TID TTY CMD
0.0 2.3 870 870 ? ...
0.0 2.3 870 1264 ? ...
jstack打印日志
]# jstack -l 870 > java_check.log
检查日志,定位问题
]# printf "%x\n" 1264
4f0
]# vim java_check.log
#根据4f0定位线程
将日志交给开发,优化代码
参考链接:
原文:https://www.cnblogs.com/wanwz/p/13398948.html