这是运行CentOS的VPS上具有512MB RAM和nginx / php-fpm / mysqld为每天成千上万的访客提供内容(主要是静态的)的VPS的内存图。
(x轴上的天数)
如您所见,它在缓存和缓冲区区域中非常跳跃。内存缓存将以不规则的时间间隔清除(排除负责的cron作业)。通常但不总是将其清除到不再增长的程度。有时它几乎全部清除,而其他时候只有一半清除。
我试图了解这些清除背后的逻辑。我希望文件数据被缓存的时间更长,并且清除内存缓存后不会看到任何其他程序使用比通常更多的内存。
这是正常的行为,还是我缺少了什么?
更新:内存升级似乎已经稳定了图表。仍然有少量下降,但没有比升级之前重要的地方。
这是OpenVZ / Virtuozzo容器还是真实的VM(例如XEN或KVM)?
—
jordanm 2012年
无法解释它们是什么,但是我有一个显示相同行为的VPS。 dl.dropbox.com/u/1578899/memory-week.png
—
EightBitTony 2012年
@jordanm这是一个基于Xen的虚拟机。
—
redburn 2012年
@EightBitTony感谢您的分享。您的看上去更“自然”,但我确实清楚地看到了内存缓存中丢弃的类似(但也许更可预测)的模式。
—
redburn 2012年
我确实想知道Munin 2是否以足够不同的方式绘制/收集数据以导致某些差异(您的平滑曲线),但即使是我的,它也在周期的中间而不是每天都有下降。当然,这很奇怪。
—
AugustBitTony 2012年