【linux】vmtouch文件缓存管理工具

目录

vmtouch简介

用法

例子

统计文件或者目录在缓存中的记录

缓存文件到内存

其他类似工具


vmtouch简介

vmtouch是用c语言编写的文件缓存管理工具,适用用于所有类Unix系统。

作用:

1,查看文件系统缓存情况

2,将文件或目录加载到内存中,提高访问速度,并减少对磁盘的读取操作。

说明:

  1. 预加载文件或目录到内存中:通过将文件或目录预加载到内存中,可以加快对它们的访问速度,减少读取延迟。
  2. 管理文件系统缓存:可以使用vmtouch来管理系统的文件系统缓存,将需要频繁访问的文件保持在内存中,以提高系统性能。
  3. 监控文件访问情况:vmtouch还可以用来监控文件的访问情况,包括文件的读取和写入操作。

 

用法

 

  1. 加载文件或目录到内存中:
    vmtouch -vt /path/to/file

    这将把文件/path/to/file加载到内存中。
  2. 查看文件的缓存情况:vmtouch -v /path/to/file

    这将显示文件/path/to/file的缓存情况。
  3. 定期更新缓存:如果你的文件是动态变化的,记得定期更新缓存,以确保缓存的数据是最新的。

vmtouch -vt access.log   #将一个文件完全缓存到内存中

vmtouch -ve access.log  #删除内存中文件的缓存

vmtouch -dl /var/www/htdocs/critical/   #固化文件到内存缓存,并以启动守护模式

例子

下面的内容主要摘自:​​​​​​https://baijiahao.baidu.com/s?id=1620277671622089657&wfr=spider&for=pc

统计文件或者目录在缓存中的记录

查看文件

cd /var/log/

vmtouch  secure

结果如上图,可以大小164K的大小的secure日志文件已经全部被缓存到内存了。

查看目录

vmtouch /var/log

可见该目录22子目录,109文件,8G大小中在内存中缓存了6M,占用了1626个内存页(一个内存也占用4K,大概6G)。

缓存文件到内存

统计access.log中的404行数

没有缓存到内存中的时候,查找语句耗时9s

time grep 404 access.log|sort|wc –l

先缓存到内存中再查找,耗时1.8秒,提速5倍

vmtouch -vt access.log

time grep 404 access.log|sort|wc –l

其他类似工具

perf-tools里面的cachestat

pcstat(page cache stat)

 

  • 22
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值