2014-05-23 25 views
2

我想测量向LAMP服务器添加内存的效果。有没有办法显示Linux缓冲区缓存未命中?

我怎样才能找到哪些进程试图从Linux缓冲区缓存读取,但错过并从磁盘读取?

+0

请参阅http://serverfault.com/questions/157612/is-there-a-way-to-get-cache-hit-miss-ratios-for-block-devices-in-linux –

回答

1

SystemTap是最好的方法之一,但公平的警告很难得到一个好的答案。内核根本不直接提供这些数据。您必须根据系统请求读取的次数以及读取磁盘的次数来推断它。 通常他们排队相当好,你可以将差异归因于VFS缓存,但并非总是如此。一个问题是LVM - LVM是一个“块设备”,但底层磁盘也是如此,所以如果你不小心,可以很容易对磁盘读取进行双重计数。

前阵子我参加了一个刺它,并写了这个:

https://sourceware.org/systemtap/wiki/WSCacheHitRate

我并不认为它是完美的,但它工作总比没有好,通常只要产生合理的输出环境相当“正常”。它确实试图以相当粗糙的方式解释LVM。

相关问题