生产服务器内存耗尽的后果是什么?

生产服务器内存耗尽的后果是什么?

我们有一台 4GB RAM 的生产服务器,运行 Debian 和 Web 服务器以及各种其他应用程序。使用 命令行进行检查htop,在任何给定时间大约使用 3.7-3.8GB 的​​ RAM。

服务器没有出现运行缓慢或无响应的迹象。以接近 100% 的 RAM 利用率运行这样的服务器是否正常,或者将来会出现一些问题?

输出free

              total        used        free      shared  buff/cache   available
Mem:        3957164     3108136      189128       22348      659900      567960
Swap:       4108284      143104     3965180

以下是 htop 输出的屏幕截图: 氢能顶盖 (通常 RAM 使用率较高,服务器最近重新启动过)

HTOP 输出

答案1

当可用内存接近 0% 时,内核会尝试越来越激烈的措施来确保有部分可用内存。快速将 RAM 调出到存储会导致速度急剧下降。OOM 终止程序会在终止进程时将性能降至零。这仍然比恐慌和重启要好。

关键词是可用的内存。Linux 将使用任何可用的内存作为缓存,这些内存会自动分配。必须引用经典 FAQ:https://www.linuxatemyram.com/

htop 报告的利用率约为 77%,页面空间使用率为 1%。充分利用它很好,但 free 输出显示高出几个百分点,并且开始交换。再多几 GB 的 RAM,最多 6 或 8 GB,将是一个不错的缓冲。特别是如果它是你的生产机器之一。

相关内容