前段时间在dbanotes上看到一篇讲Instagram后台架构的文章,文中提到了Instagram使用的一个小命令vmtouch,觉得挺有意思的,特此推荐一下。 先看一下vmtouch作者给的介绍: vmtouch is a tool for learning about and controlling the file system cache of unix and unix-like sy
vmtouch是一个很好用的小工具,可以用来查询文件是否在内存中的有缓存,也可以将文件导入缓存或者锁定缓存。 工具源码:https://github.com/hoytech/vmtouch 1.vmtouch的使用 先来看看这个工具如何使用的 2.vmtouch原理 首先我们来看vmtouch.c文件,这个工具就这一个源码文件,可见有多简洁。 main函数很简单,先进行参数解析,然后执行
free 和 meminfo查看内存情况。 linux的内存情况我们通常使用free命令来查看 $ free -m total used free shared buffers cached Mem: 925 388 537 25 27
http://hoytech.com/vmtouch/ https://github.com/hoytech/vmtouch.git 非常好用,可以载入文件到page cache或者驱逐(evict),可以使用mlock/mlockall方式锁定,还可以打印出文件/文件夹在page cache中占用多少。预加载索引完全可以参考这个。 看linux中的page size,getconf PAGESI
https://hoytech.com/vmtouch/ [root@localhost ~]# git clone git://github.com/hoytech/vmtouch.git 正克隆到 'vmtouch'... remote: Counting objects: 296, done. remote: Total 296 (delta 0), reused 0 (delta
给大家介绍个好玩的工具--vmtouch,可以查看某个文件在内存的使用。下面是摘录其网站,有兴趣的童鞋可以自己研究下 下载源码wget http://hoytech.com/vmtouch/vmtouch.c 编译gcc -Wall -O3 -o vmtouch vmtouch.c cp vmtouch /usr/local/bin/ Example 1 How much of the /bin/
利用vmtouch管理文件的page cache, vmtouch主页和使用说明:https://hoytech.com/vmtouch/ 源码也比较简单 https://github.com/hoytech/vmtouch/blob/master/vmtouch.c void usage() { //使用说明 printf("\n"); .... printf(" -t t
这个工具很好使,对查找定位问题很有帮助,特别是对大量使用mmap的系统,比如搜索引擎中的索引。 vmtouch的源文件只有一个c文件,很简单;主要使用了两个系统函数 1. int mincore(void *start, size_t length, unsigned char *vec): get information on whether pages are in core 判断文件数据页