Linux中buff-cache占用过高解决方案

Posted 入门小站

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中buff-cache占用过高解决方案相关的知识,希望对你有一定的参考价值。

> free -h

什么是buff

什么是cache

清除buff/cache

手动清除

> sync
> echo 1 > /proc/sys/vm/drop_caches
> echo 2 > /proc/sys/vm/drop_caches
> echo 3 > /proc/sys/vm/drop_caches
  • sync:将所有未写的系统缓冲区写到磁盘中,包含已修改的i-node、已延迟的块I/O和读写映射文件
  • echo 1 > /proc/sys/vm/drop_caches:清除page cache
  • echo 2 > /proc/sys/vm/drop_caches:清除回收slab分配器中的对象(包括目录项缓存和inode缓存)。slab分配器是内核中管理内存的一种机制,其中很多缓存数据实现都是用的pagecache。
  • echo 3 > /proc/sys/vm/drop_caches:清除pagecache和slab分配器中的缓存对象。
    /proc/sys/vm/drop_caches的值,默认为0

定时任务清除

> vim clean.sh
#!/bin/bash#每两小时清除一次缓存
echo "开始清除缓存"
sync;sync;sync #写入硬盘,防止数据丢失
sleep 20#延迟20秒
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches

> chmod +x clean.sh
> crontab -e
# 每两小时执行一次
0 */2 * * * /opt/clean.sh
  • 设置crond启动以及开机自启
  • systemctl start crond.service
  • systemctl enable crond.service

原文链接:https://rumenz.com/rumenbiji/linux-buff-cache.html
微信公众号:入门小站

以上是关于Linux中buff-cache占用过高解决方案的主要内容,如果未能解决你的问题,请参考以下文章

Linux中Cache内存占用过高解决办法

swap空间占用过高解决方案

CPU占用过高问题的排查及解决

linux内存占用率过高怎么办

node启动之后内存占用过高解决方案

node启动之后内存占用过高解决方案