对 buff/cache 和可用内存指标感到困惑

对 buff/cache 和可用内存指标感到困惑

我对 Linux 中命令提供的内存指标完全感到困惑free。目前我收到以下指标:

              total        used        free      shared  buff/cache   available
Mem:          1.9Gi       624Mi       759Mi       8.0Mi       603Mi       1.2Gi
  1. 它显示 759Mi 的可用内存相对较大。它被定义为未使用的内存,可用内存被定义为可用于启动新应用程序而无需交换的内存。可用内存比可用内存大多少?未使用的内存是可用内存的一部分吗?
  2. buff/cache 是 603Mi。据我所知,它也算在可用内存中。但是怎么办呢?假设我想启动一个需要 1.2Gi 内存(全部可用内存)的应用程序,那么当前在 buff/cache 中的数据会发生什么?它们会从 RAM 中清除吗?在这种情况下,系统如何在没有任何内存的情况下继续进行缓冲和缓存?!

答案1

Linuxatemyram.com是一篇很好的文章。但基本上你说的没错,可用内存的释放没有任何延迟。但正如你所指出的,现在存在缓冲和缓存的问题。这可能会或可能不会对服务器的性能产生负面影响。

迄今为止,除了自己进行基准测试之外,我个人并不了解如何准确地规划此类 RAM 需求的容量。

相关内容