为什么 Linux 不使用任何内存进行缓存?

1 linux

我目前正在使用 Linux 服务器来托管 Web 应用程序。服务器似乎没有使用任何内存进行缓存。我注意到了这一点,因为我觉得机器很慢。我认为它可能会用完 ram。

拥有 ssh 访问权限,我能够执行“free -m”,它显示了以下内容:

             缓存的已用空闲共享缓冲区总数
内存:1536 244 1291 0 0 0
-/+ 缓冲区/缓存:244 1291
交换:0 0 0

在我看来,通常它应该使用大约 90% 的可用内存进行缓存。我以前从未见过这个。

我这里可能有什么问题?

BTW:它似乎是一个 RedHat。我不太了解 RedHat,因为我更喜欢 Debian。

wom*_*ble 5

您使用的是 OpenVZ 或 Virtuozzo VM。通过查找文件/proc/user_beancounters或目录进行确认/proc/bc;如果其中一个(或两个)存在,则它肯定是 OpenVZ/Virtuozzo VM(这些位置仅存在于那些 VM 类型中)。如果它不存在,则它们的存在可能已从您所在的 VM 环境中排除(一些不道德的供应商这样做是为了试图隐藏他们的狡猾,但没有缓存或缓冲区是一种赠品)。如果你被卖了一台物理机器,你就被卖了。

  • 检查`/proc/bc/` 目录也是一个好主意,因为`user_beancounters` 前一段时间已被弃用(我不确定它是否/何时将被删除)。 (2认同)