fast json 引起得内存泄漏

最近项目在做压力测试得时候,发现性能快速劣化,tps很低,到最后系统挂死。

通过查看cpu情况,发现cpu占用非常高,找到暂用cpu的线程是gc线程

同时查看系统内存gc情况,发现频繁gc,并且内存不能够回收,

明显是有了内存泄漏的现象,再dump内存工具,发现com.alibaba.fastjson.util.IdentityHashMap产生了大量

fast json 引起得内存泄漏_第1张图片org.springframework.core.ResolvableType

通过分析代码

主要原因是IdentityHashMap 使用 System.identityHashCode作为key,而没有使用 ResolvableType的hash值

 

 

fast json 引起得内存泄漏_第2张图片

   

 

     主要的出现场景就是json解析的时候,采用了泛型类,泛型类又没有直接指定具体的类型

fast json 引起得内存泄漏_第3张图片

 

你可能感兴趣的:(fast json 引起得内存泄漏)