1

当我对 IoTDB 进行本机内存跟踪时,我发现内部内存部分如此之高?我不知道这是否正常,实际上我不知道这部分内存是做什么用的?

在此处输入图像描述

4

1 回答 1

1

java Native memory tracking中的Internal memory部分占用了过多的内存可能是由DirectByteBuffer等堆外内存引起的。在 IoTDB 中,我们确实使用 FileChannel 来做本身使用 DirectByteBuffer 的 io 东西,我们也将其限制在conf/iotdb-env.sh

-XX:MaxDirectMemorySize=${MAX_DIRECT_MEMORY_SIZE}

所以应该是正常的,不用担心。

以上说法可以通过https://gist.github.com/prasanthj/48e7063cac88eb396bc9961fb3149b58进行验证。

于 2022-01-13T06:00:06.097 回答