生产环境使用ignite2.7集群,运行一段时间后内存泄漏
@李玉珏 你好,想跟你请教个问题:
我们在生产环境使用了ignite2.7集群,嵌入式启动的ignite服务端节点。4台物理机,每台启了4个节点,每个节点堆外内存40G,堆内存40G。使用DataStream每秒更新约10万条数据,一开始运行都比较正常。
过了10多天后,Heap被占满,频繁GC也无法释放内存,然后整个集群挂掉无法使用。重启后恢复,过段时间又是如此。
下面是Heap被占满后,取的DUMP文件,然后用EMT工具分析的,看到有3个地方可能有内存泄漏。
第一个问题占用最多内存,在org.apache.ignite.internal.processors.query.h2.twostep.MapNodeResults的以下属性有大量对象没被回收。
private final ConcurrentMap<MapRequestKey, MapQueryResults> res = new ConcurrentHashMap<>();
下图是内存泄漏的总览
下图是内存泄漏问题1(占用45%)的栈信息
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
还没有解决,你们呢?
我也遇到内存泄露的问题,你们解决了吗?