转

https://blog.csdn.net/zhangzhen02/article/details/121749942?spm=1001.2014.3001.5501

因为第一次加载完数据就占了75G内存。

不停查询遍历时,内存就会不停的累加,也不释放,直到oom

做了如下操作。

操作步骤:

1.首先将配置(influxdb.conf)中的索引类型进行修改

使以后的数据使用磁盘索引。如下:

[data]
  # The type of shard index to use for new shards.  The default is an in-memory index that is
  # recreated at startup.  A value of "tsi1" will use a disk based index that supports higher
  # cardinality datasets.
  //将#去掉,将值改为tsi1
  index-version = "tsi1"

使用env GODEBUG=madvdontneed=1参数,强制每次释放内存时,将内存交给系统。如下

重启influx服务,再看RES占用,发现大幅下降,只有一百多M了,约等于HeapIdle+HeapInUse。

更多推荐