由于 RAM Cache + Buffer 增加,RAM Free 会随着时间的推移而减少

Tob*_*tor 2 linux memory out-of-memory

在服务器级别可视化一些与内存相关的指标时,我得到一个如下所示的图表:

图表

蓝线下方的区域是RAM Used。红线下方和蓝线上方的区域是RAM Cache + Buffer。黑线下方和红线上方的区域是RAM Free。橙色线以下和黑色线以上的区域是SWAP Used

正如您在图表中看到的:RAM Used随着时间的推移略有减少(或至少没有增加)。但 RAM Free 也在减少,因为RAM Cache + Buffer.

我们尝试估计此服务器将来是否会耗尽内存,因此创建了一条RAM Free明显减少的趋势线,因此趋势分析表明,RAM Free在不久的将来不会再有内存问题,并且会出现内存问题。

我现在的问题是:

  • 这是一种有效的方法还是我们应该专注于组合指标(例如RAM Free+ Ram Cache + Buffer)或仅关注RAM Used
  • 强烈减少RAM Free和增加RAM Cache + Buffer是关于可用内存的危险信号还是无需担心?
  • 如果这根本不是有效的方法,那么可以从这样的可视化或这样的指标中得出什么?

Ste*_*itt 7

空闲 RAM 是浪费的 RAM;系统上的可用 RAM 量很少这一事实是一个好兆头,而不是一个坏兆头。

重要的是应用程序使用的 RAM 量,以及与过度使用交换相关的停顿。在您的情况下,与安装的数量相比,使用的 RAM 数量较少,并且无需担心。

在这种类型的图表上,唯一需要注意的是过度使用交换和过度使用 RAM,即使如此,唯一自给自足的指标是过度使用 RAM。如果存在过多的交换活动,则过度使用交换只是一个问题,系统花费太多时间交换页面和交换页面,而您无法从该图中看出这一点。

  • 我说过空闲 RAM 是浪费的 RAM;即使没有大量的可用内存,它仍然被浪费了。这就是内核尽可能多地使用缓存的原因:缓存中的任何内容都可以在以后节省 I/O。RAM 使用过多需要通过观察使用模式来确定:一致 90% 使用与少量 I/O 可能是可以的,而一致 60% 使用与大量 I/O 或定期内存消耗任务可能不会。 (4认同)