1、先查看应用进程号: ps -ef | grep 应用名 ,也就是 pid
2、查看pid垃圾回收情况: jstat -gc pid 5000(时间间隔)
3、dump jvm二进制的内存详细使用情况: jmap -dump:format=b,file=/home/test/oom.hprof pid
4、使用 Memory Analyzer (MAT)来分析,简称MAT,分析内存泄露对象
注意: 其中 pid 是指程序进程号
通过MAT分析,得出结论:主要是由于大量的JDBC42PreparedStatement对象没有被回收引起的,即 openStatements 中引用的对象
————————————————
版权声明:本文为CSDN博主「dragon@oo」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ywlmsm1224811/article/details/91047585
https://blog.csdn.net/yucaifu1989/article/details/82591926-----分析duid参数
https://blog.51cto.com/u_9955199/3225113—jpa写法
https://blog.51cto.com/qiangsh/2132763—当前用户的最大线程数
https://www.pudn.com/news/631af30a0d6a7b3b66c92e0c.html—各种问题排查方式
https://blog.csdn.net/chen_lay/article/details/117819602----jstack命令查看占用CPU高的线程堆栈信息