美文网首页
linux drop cache机制

linux drop cache机制

作者: 小灰灰1999 | 来源:发表于2022-10-09 15:12 被阅读0次

在linux中, 可以通过对/proc/sys/vm/drop_caches设置不同的数值,从而实现不同内容的回收,从linux官方文档中可以看到:


image.png
释放物理页缓存
echo 1 > /proc/sys/vm/drop_caches
释放可回收的slab对象,包含inode and dentry
echo 2 > /proc/sys/vm/drop_caches
同时释放 页、目录、索引节点缓存:
echo 3 > /proc/sys/vm/drop_caches

操作影响

  1. 上述操作是无害的操作,并且智慧释放完全没有使用的内存对象。脏对象(dirty objects)将继续被使用直到它们被写入到磁盘中,所以内存脏对象不会被释放。
  2. 如果在执行drop_caches之前执行sync指令,则会将脏对象刷新到磁盘中,这样drop_caches操作会释放出更多内存。
  3. 回收内存过程中可能会导致cpu和io比较高,也可以在进程运行过程中进行回收,但是更多的建议在停止进程后回收,影响较小。

注意:drop_caches需要花费一些时间(在终端中可以看到大约几十秒时间),此时再次使用cat /proc/buddyinfo可以看到立即出现了大量高阶内存页。

但是drop_caches这个触发动作是一次性的,也就是说,并不因为cat /proc/sys/vm/drop_caches时显示输出内容是3就表示系统不缓存内容。相反,一旦完成drop_caches,系统立即自动对后续内存对象进行缓存。所以要再次触发缓存清理,需要再次执行 echo 3 > /proc/sys/vm/drop_caches。

建议操作

建议操作为:sync && echo 2 > /proc/sys/vm/drop_caches

相关文章

  • linux drop cache机制

    在linux中, 可以通过对/proc/sys/vm/drop_caches设置不同的数值,从而实现不同内容的回收...

  • 2018-08-22

    Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches 频繁的文件访问会导致系统的...

  • Linux 查看清理cache

    Linux 查看清理cache 因为LINUX的内核机制,一般情况下不需要特意去释放已经使用的cache。这些ca...

  • Linux下清空缓存的办法

    Writing to this will cause the kernel to drop clean cache...

  • Linux cache参数调优

    缓存机制(cache)是保证Linux环境下对硬盘/flash操作效率的有效方式。cache建立在内存中,它缓存了...

  • why drop caches in linux

    搬运工http://serverfault.com/questions/597115/why-drop-cache...

  • Spark详解06容错机制Cache 和 Checkpoint

    Cache 和 Checkpoint 作为区别于 Hadoop 的一个重要 feature,cache 机制保证了...

  • okHttp 原理解析(二)

    缓存机制 请求头缓存设置 Cache-Control 常见的取值有private、public、no-cache、...

  • DNS解析步骤

    1.应用发起基于域名的请求后,linux先查询本地dns cache。 2.本地dns cache命中(cache...

  • HTTP Cache

    本文为web开发系列的一部分。 HTTP协议的Cache机制 HTTP协议提供Cache机制,当相应数据没有变化时...

网友评论

      本文标题:linux drop cache机制

      本文链接:https://www.haomeiwen.com/subject/ovygartx.html