centos7.6中free -h 查看buff/cache占用率过高,为什么系统无法自动回收buff/cache里面的缓存呢

centos7.6的系统使用4块12T硬盘,内存容量128G,对设备进行流量测试,发现跑测1个小时后,系统下free -h查看buff/cache达到了89G,为何系统不会自动回收此缓存数据,一直堆积呢

以前的版本中,系统会通过Proc文件系统中的/proc/sys/vm/drop_caches文件来控制缓存回收,但是在7.6及以后的版本中,该文件已经去除了。取而代之的是,系统采用LRU(Least Recently Used)算法来管理文件系统缓存。这种算法会在系统内存不足时,动态地回收一部分最近最少被使用的缓存空间,以便为其他应用程序腾出内存。
因此,CentOS 7.6及以后的版本系统可以自动管理buff/cache缓存空间,无需手动清除buff/cache。如果free -h命令显示buff/cache占用率过高,不一定意味着系统无法自动回收缓存,可能是当前系统的内存使用情况比较特殊,或者有某些系统进程在占用过多的内存。

如果以上回答对您有所帮助,点击一下采纳该答案~谢谢