起因
内部系统,收到客服小姐姐反馈,某个页面的修改功能特别慢,以至于功能无法使用。同时伴随着CPU告警。
至此,赶紧去dump了一份内存报告 (dump会使服务短时间暂停)
jmap -dump:format=b,file=mem.bin 29194
下载后,使用Eclipse mat打开,发现有个对象拥有15w多个实例,猜测此处必是问题的根源。
![dump](https://i-blog.csdnimg.cn/blog_migrate/8665b164a17ed66c564a326a5d8021e7.jpeg)
解决
结合代码发现,循环里面有个查询全部的很可以,点进去,就是它了,随后优化代码并热修。
总结
mat工具,很好用,其实使用 jmap histo pid
更快捷一些