我看到了大量的 `java.util.concurrent.ConcurrentSkipListMap` 和 `com.codahale.metrics.WeightedSnapshot`是否存在内存泄漏?

问题描述

我有一个 Java 应用程序,但我们遇到了堆问题。我们认为可能会出现内存泄漏,因为堆会随着时间的推移不断增长。这是直方图的样子。

   1:       3025303      439665320  [C
   2:        904292      310612216  [B
   3:        385084      244774776  [I
   4:       7384953      177238872  java.util.concurrent.concurrentskiplistmap$Node
   5:       3953963       94895112  java.lang.Double
   6:       1068745       70512552  [Ljava.lang.Object;
   7:        559816       53742336  java.lang.management.ThreadInfo
   8:       1526344       36632256  java.lang.String
   9:        883927       21214248  java.util.ArrayList
  10:        196823       16137520  [Lio.netty.util.Recycler$DefaultHandle;
  11:        540532       13139904  [Ljava.lang.String;
  12:         68479       12439480  [J
  13:        501950       12046800  java.util.concurrent.concurrentskiplistmap$Index
  14:        282440       11297600  java.util.LinkedHashMap$Entry
  15:        122865       10958248  [Ljava.util.HashMap$Node;
  16:        256514       10260560  com.twilio.platform.metrics.DataDogClient$DataDogMetric
  17:        402976        9671424  java.util.LinkedList$Node
  18:        135258        7574448  java.util.LinkedHashMap
  19:        168800        6752000  org.jboss.netty.handler.codec.http.HttpHeaders$HeaderEntry
  20:        201387        6444384  com.codahale.metrics.WeightedSnapshot$WeightedSample
  21:         22797        6401952  [D
  22:        196415        6285280  io.netty.util.Recycler$WeakOrderQueue$Link
  23:          8064        5419008  io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue
  24:        202768        4866432  java.lang.management.LockInfo

我们在整个代码中使用 codahale 指标,com.codahale.metrics.WeightedSnapshot$WeightedSamplejava.util.concurrent.concurrentskiplistmap$Node 似乎是由 Reservoir 实现 ExponentiallyDecayingReservoir 创建的。

我是堆分析和内存泄漏问题的新手。有人可以帮忙吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)