当考虑系统当前的缓存使用情况时,我应该有多保守?

当考虑系统当前的缓存使用情况时,我应该有多保守?

与任何大型在线服务一样,我们会定期评估硬件的当前负载,并尝试“调整大小”,以免为严重未充分利用的硬件付费。

在考虑缓存的使用时我应该有多担心?据我所知,缓存基本上是作为一种优化手段使用的,但我似乎还记得读到过,缓存可能会在不需要使用的情况下保留一段时间——这是一种由于可用资源过多而造成的浪费。以下是我们当前系统之一的示例:

顶部

那么我的问题是,当考虑该主机可以(或应该)承载多少负载时,我应该如何“安全”地使用它?我是否认为所有东西(已用/缓冲区/缓存)都是 100% 的最佳使用要求?或者我是否可以对缓存更宽容,并假设系统可能会更频繁地交换缓存条目,但不会达到实际上会导致应用程序性能问题的程度?

答案1

缓存就是减少对底层存储(HDD 或 SSD)的访问,因此这完全取决于您的 I/O 工作负载。减少可用缓存可能会增加您的iowait磁盘%utils统计数据,这意味着物理磁盘可能会承受更大的压力。

我建议您以相对较小的幅度减少可用内存(例如:有时减少 4 GB),然后检查服务器性能是否下降。如果没有,您可以再次减少内存(当然,不要低于应用程序的最低要求)。

相关内容