6回复
1年前
【已结算】堆外内存溢出
环境参数
- 操作系统Linux
- 操作系统版本Linux localhost.localdomain 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
- JDK版本JDK8
- 内存30GB
- CPU核数8
- 操作系统位数64位
68019.hprof76.74MB
项目使用h2数据库,跑几天后会触发堆外内存泄漏。
JVM参数设定是(-XX:MaxDirectMemorySize=32m,-XX:-DisableExplicitGC),分析内存快照发现有10几个这样的DirectByteBuffer 对象无法回收,使用Jconsole 手动触发fullgc也无法回收,不知道为什么DirectByteBuffer 无法回收,现在把内存快照上传,请大家帮忙分析下,感谢。
2115 阅读