【问题标题】:Cassandra Cluster manager memory leaksCassandra 集群管理器内存泄漏
【发布时间】:2016-09-04 00:34:28
【问题描述】:

我们有带有spring cassandra的spring boot应用程序,应用程序由于OOM每2到3天崩溃一次,我们需要重新启动应用程序才能再次工作。

我们已经进行了堆转储,当我们运行泄漏怀疑时,我们看到如下。

“io.netty.buffer.PoolThreadCache”的 31 个实例,由 “org.apache.catalina.loader.WebappClassLoader@0xe03255d0”占用 30,818,712 (27.72%) 字节。

“com.datastax.driver.core.Cluster$Manager”的 2 个实例,由 “org.apache.catalina.loader.WebappClassLoader@0xe03255d0”占用 20,144,744 (18.12%) 字节

我们怀疑,这可能是由于集群 NIO 线程造成的,如果有人遇到同样的问题,请告诉我。

【问题讨论】:

    标签: java memory-leaks cassandra spring-data-cassandra


    【解决方案1】:

    关于您分享的基本信息,本案的初步怀疑似乎是与“io.netty.buffer.PoolThreadCache”相关的低效率。

    OOM 可能是由于在 PoolThreadCache 中生成的线程数量过多(这可能正在用完堆)或由于 PoolThreadCache 无法回收空闲线程的一些低效率。

    您需要通过使用 jmap 命令检查内存利用率来进行调试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-27
      • 1970-01-01
      • 2014-04-08
      • 2019-12-22
      • 2012-05-19
      • 2018-06-19
      • 2013-06-25
      • 1970-01-01
      相关资源
      最近更新 更多