zoukankan      html  css  js  c++  java
  • Linux之清理linux内存cache

    转自:https://www.cnblogs.com/madsnotes/articles/5740495.html

    频繁的文件访问会导致系统的Cache使用量大增。例如:在使用grep从很多文件中搜索特定数据串的时候,发现内存使用迅速提高,主要是cache的使用占用了相当多的内存。在使用下面命令的时候忽视了文件的数量和文件大小,导致cache突增。

    # grep -e "dst_string" ./*  

      大家在使用shell编程的时候一定要注意通配符的使用,这里尤其提醒大家就是星号(*)的使用,星号固然方便,但要适度使用。  这里主要还是记录如何手动清理linux内存cache,因为上面的操作使用的大量的cache。

    复制代码
    # 使用free查看当前系统内存使用情况
    [root@bogon ~]# free
                 total       used       free     shared    buffers     cached
    Mem:       1938784      89628    1849156        248         60      17644
    -/+ buffers/cache:      71924    1866860
    Swap:      2097148          0    2097148
    
    # 执行grep操作
    [root@bogon ~]# grep -e "dsf" ./*
    
    # 再次查看内存使用情况
    [root@bogon ~]# free
                 total       used       free     shared    buffers     cached
    Mem:       1938784     100020    1838764        244       3608      26020
    -/+ buffers/cache:      70392    1868392
    Swap:      2097148          0    2097148
    复制代码

    下面介绍如何清理cached

    复制代码
    # 执行sync同步数据,防止数据或操作丢失(重要),将未写的系统缓冲区写到磁盘中。包含已修改的 i-node、已延迟的块 I/O 和读写映射文件
    sync
    # 清理cached [root@bogon ~]# echo 3 > /proc/sys/vm/drop_caches # 查看清理cached后的内存使用情况 [root@bogon ~]# free total used free shared buffers cached Mem: 1938784 87116 1851668 240 188 17596 -/+ buffers/cache: 69332 1869452 Swap: 2097148 0 2097148
    复制代码

    drop_cache的详细文档如下,以便查阅.

    复制代码
        Writing to this will cause the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free.
        To free pagecache:
        * echo 1 > /proc/sys/vm/drop_caches
        To free dentries and inodes:
        * echo 2 > /proc/sys/vm/drop_caches
        To free pagecache, dentries and inodes:
        * echo 3 > /proc/sys/vm/drop_caches
        As this is a non-destructive operation, and dirty objects are notfreeable, the user should run "sync" first in order to make sure allcached objects are freed.
        This tunable was added in 2.6.16.(只有内核在2.6.16以上的才支持)
    复制代码
  • 相关阅读:
    修改电脑安装路径
    快读模板
    ECNU XCPC 2021 OCTOBER TRAINING #1
    System.AccessViolationException处理,HandleProcessCorruptedStateExceptions
    网页打包到apk
    去除服务器的heder信息
    outlook
    华为机试题:计算链路长度
    华为机试题:求子区间面积和
    华为机试题: IPv6地址压缩
  • 原文地址:https://www.cnblogs.com/x_wukong/p/10773768.html
Copyright © 2011-2022 走看看