博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下清理内存和Cache方法
阅读量:6563 次
发布时间:2019-06-24

本文共 1244 字,大约阅读时间需要 4 分钟。

 频繁的文件访问会导致系统的Cache使用量大增

  $ free -m

  total used free shared buffers cached

  Mem: 3955 3926 28 0 55 3459

  -/+ buffers/cache: 411 3544

  Swap: 5726 0 5726

  free内存减少到几十兆,系统运行缓慢

  运行sync将dirty的内容写回硬盘

  $sync

  通过修改proc系统的drop_caches清理free的cache

  $echo 3 > /proc/sys/vm/drop_caches

  drop_caches的详细文档如下:

  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.

  修改/etc/sysctl.conf 添加如下选项后就不会内存持续增加

  vm.dirty_ratio = 1

  vm.dirty_background_ratio=1

  vm.dirty_writeback_centisecs=2

  vm.dirty_expire_centisecs=3

  vm.drop_caches=3

  vm.swappiness =100

  vm.vfs_cache_pressure=163

  vm.overcommit_memory=2

  vm.lowmem_reserve_ratio=32 32 8

  kern.maxvnodes=3

  上面的设置比较粗暴,使cache的作用基本无法发挥。需要根据机器的状况进行适当的调节寻找最佳的折衷。

转载于:https://www.cnblogs.com/dailidong/p/7571188.html

你可能感兴趣的文章
如何构建日均千万PV Web站点 (三) Sharding
查看>>
C# Datatable排序
查看>>
软工学习记3
查看>>
信息安全管理(1):组织的三个层面
查看>>
Eclipse导入Hadoop源码项目及编写Hadoop程序
查看>>
HDU4462(子集枚举)
查看>>
原生JS实现圆周运动
查看>>
SSH实现无密码验证登录
查看>>
文件的读写
查看>>
LC.108.Convert Sorted Array to Binary Search Tree
查看>>
nohup 日志切割
查看>>
[POJ1741]Tree(点分治)
查看>>
nyoj305 表达式求值
查看>>
695. Max Area of Island - Medium
查看>>
cfree使用cygwin编译程序出现计算机丢失cygwin1.dll解决办法
查看>>
Docker镜像加速 | Docker 中国源 | 仓库
查看>>
洛谷——P3225 [HNOI2012]矿场搭建
查看>>
我们都是程序员(四个男人三个女人的故事上)
查看>>
sexi部署openstack (devstack) 、三
查看>>
(转)Android’s HTTP Clients
查看>>