有人能以实际的方式解释这个吗?示例表示使用Nginx和3个Mongrel群集的一个低流量Rails站点的使用情况。我问,因为我的目标是了解页面缓存,想知道这些数字是否对该过程有重要意义。谢谢。很棒的网站!
me@vps:~$ free -m
total used free shared buffers cached
Mem: 512 506 6 0 15 103
-/+ buffers/cache: 387 124
Swap: 1023 113 910
答案 0 :(得分:3)
物理内存全部耗尽。为什么?因为它在那里,系统应该使用它。
您还会注意到系统正在使用113M的交换空间。坏?好?这取决于。
另请参阅有103M的缓存磁盘;这意味着系统已经决定最好缓存103M磁盘并更换这些113M;也许你有一些进程使用未被使用的内存,因此被分页到磁盘。
正如另一张海报所说,你应该使用其他工具来看看发生了什么:
alex@armitage:~$ vmstat 1 procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 2 1 71184 156520 92524 316488 1 5 12 23 362 250 13 6 80 1 0 0 71184 156340 92528 316508 0 0 0 1 291 608 10 1 89 0 0 0 71184 156364 92528 316508 0 0 0 0 308 674 9 2 89 0 0 0 71184 156364 92532 316504 0 0 0 72 295 723 9 0 91 0 1 0 71184 150892 92532 316508 0 0 0 0 370 722 38 0 62 0 0 0 71184 163060 92532 316508 0 0 0 0 303 611 17 2 81 0
它会告诉你交换是否会伤害你(si上的数字很高,所以),并且更容易看到性能随时间变化的统计数据。
答案 1 :(得分:1)
通过我的阅读,你已经使用了几乎所有的记忆,有6米的免费,并且将进入大约10%的掉期。更有用的工具是使用top或ps来查看每个单独的mongrels在RAM中使用了多少。因为你要进行交换,你可能会变得更慢。你可能会发现只有2个mongrel而不是3个可能实际上响应更快,因为它可能不会进入交换内存。
页面缓存肯定可以帮助减少响应时间,所以如果您的页面是可缓存的(例如,他们没有单个用户独有的内容),我会说肯定检查出来