如何知道何时需要增加服务器内存?

如何知道何时需要增加服务器内存?

我有一个 VPS,正在为客户运行几个网站。运行free -h显示以下内容:

~$ free -h
             total       used       free     shared    buffers     cached
Mem:          994M       855M       138M        39M        72M       420M
-/+ buffers/cache:       362M       631M
Swap:         511M         0B       511M

所以我有大约 138MB 的可用内存。我的问题是,您如何知道何时需要增加服务器上的物理内存量?当它开始持续占用交换空间时?

任何时候我都有大约 140-145MB 的可用内存。这是否表明可用内存量与总可用内存量相称?

答案1

最需要注意的是页面错误。在大多数 Linux 系统上,运行

ps -o min_flt,maj_flt

会为您提供一些累积统计数据,但实时性并不总是足够好。在检查系统的整体健康状况(包括内存、处理器、网络等)时,SAR 可能是您最好的朋友……请务必查看 sar 的手册页。但要回答页面错误,请运行:

sar -B

检查主要故障列,了解是否有任何重大情况。一些主要页面故障是正常的,但许多页面故障的累积通常表明您有一个进程正在不加选择地消耗内存,或者您需要增加服务器中的物理内存量。

最后要注意的是,当运行“free”来查看内存量时,请确保将缓冲区/缓存下列出的可用内存量添加回显示的总内存中。

相关内容