方法一:jmap 查看堆内存java
1. top出占用资源最高的pid 工具
2. jmap -histo:live pid | more 查看堆内存使用状况线程
3 .jmap -dump:format=b,file=outfile 3024能够 将3024进程的内存heap输出出来到outfile文件里,再配合MAT(内存分析工具)orm
方法二:jstack 定位到线程进程
1.ps -ef | grep java 找出相关程序内存
2.top -Hp pid 找出具体线程的pid资源
3. printf "%x\n" pid 转换成16进制form
4. jstack pid | grep 16进制线程pidfile