标签 'OutOfMemory'

Java如何定位堆内存溢出问题?

编写Java项目时,经常会遇到两种问题。 第一种:Java进程占用CPU比较高 第二种:Java进程堆内存溢出 上一篇主要介绍了第一种问题的排查手段,今天主要跟大家聊聊第二种问题如何排查。 一、查看Java进程堆内存使用情况 jstat -gcutil [pid] 2000 随着进程运行时间的推移内存会上下浮动。如果内存上升后执行FGC,内存没有被回收,则需要查看是否有内存泄露风险。 二、排查 获取内存信息 jmap -dump:format=b,file=[文件输出路径] [pid] ex: jmap -dump:format=b,file=/opt/app/27459.dump 27459 备注: 1、执行jmap dump 前可以手动触发一次fgc(jmap –histo:live [...

阅读全文