Java的Groovy执行器内存泄露
一个朋友遇到的:
32g内存的机器跑了一个java应用,
发现内存基本占用完了
dump堆下来发现有19G,还有10多g是占用的堆外内存
堆内存包括哪些?主要是青年代和老年代
堆外内存呢?主要存放的是class对象、代码、mmap、还有c语言层面上使用的直接内存
通过mat分析19g堆文件,发现:
发现groovy相关的对象和char数组两个,加起来占用了30%的堆内存
搜索发现了:Java的Groovy执行器内存泄露
- 随机毒鸡汤:晚上的我觉得自己了不起,早上的我觉得自己起不了。