我对 Linux 中命令提供的内存指标完全感到困惑free
。目前我收到以下指标:
total used free shared buff/cache available
Mem: 1.9Gi 624Mi 759Mi 8.0Mi 603Mi 1.2Gi
- 它显示 759Mi 的可用内存相对较大。它被定义为未使用的内存,可用内存被定义为可用于启动新应用程序而无需交换的内存。可用内存比可用内存大多少?未使用的内存是可用内存的一部分吗?
- buff/cache 是 603Mi。据我所知,它也算在可用内存中。但是怎么办呢?假设我想启动一个需要 1.2Gi 内存(全部可用内存)的应用程序,那么当前在 buff/cache 中的数据会发生什么?它们会从 RAM 中清除吗?在这种情况下,系统如何在没有任何内存的情况下继续进行缓冲和缓存?!
答案1
Linuxatemyram.com是一篇很好的文章。但基本上你说的没错,可用内存的释放没有任何延迟。但正如你所指出的,现在存在缓冲和缓存的问题。这可能会或可能不会对服务器的性能产生负面影响。
迄今为止,除了自己进行基准测试之外,我个人并不了解如何准确地规划此类 RAM 需求的容量。