为page cache设置预留内存空间以解决因大量匿名页申请导致文件缓存颠簸的问题

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

本文介绍了通过为page cache(文件缓存)设置预留内存空间,解决因大量匿名页申请导致文件缓存颠簸的问题,从而缓解因持续回收page cache所引发的系统稳定性问题(例如无法触发OOM)。

使用限制

操作系统:Alibaba Cloud Linux 3。

内核版本:5.10.112-11及更高版本。

操作步骤

警告

为page cache设置预留的内存空间过大会导致过早出现OOM的情况,请根据实际需求谨慎设置预留空间大小。

  • 设置page cache预留。

    <KB>需替换为所需设置预留的大小,单位:千字节(kbytes)。例如设置1 GB的page cache,<KB>应为1048576<KB>值为0则代表关闭该功能。

    • 通过/proc接口设置page cache预留。

      sudo sh -c 'echo <KB> > /proc/sys/vm/min_cache_kbytes'
    • 通过sysctl设置page cache预留。

      sudo sysctl -w vm.min_cache_kbytes=<KB>