使用所有系统内存的不可见进程

使用所有系统内存的不可见进程

我有一个 VPS(Ubuntu 14.04),内存为 512MB。以前这个内存足够了,但有一段时间,它带来了一些问题——某物正在消耗所有内存,而我的调试却让我毫无头绪。

我已经关闭了 Apache、MySQL 等,但仍然使用了 90% 的内存。这真是让我困惑。我已重启多次。

截屏

我确信我只是很笨,但我很感激这个社区能就这个问题传授的任何智慧。

答案1

您只安装了 500 MB 的 RAM。考虑到这么少的资源,我并不惊讶其中大部分都被使用了。

另一方面,htop将实际使用的内存(由应用程序分配)和缓存(由系统用于缓存磁盘访问,但在需要时可立即供应用程序使用)相加。因此,“非可用”内存量看起来比实际大得多。

检查的输出free -h,它将为您提供更多详细信息:

            total        used        free      shared  buff/cache   available
Mem:          11G        1,2G        9,2G         30M        1,2G         10G
Swap:        7,5G          0B        7,5G

虽然该used列显示了总共使用了多少内存(如htop),但available列显示应用程序可分配的内存量。这通常是最终用户感兴趣的数字。

替代输出格式(从底部的链接复制):

             total       used       free     shared    buffers     cached
Mem:          1504       1491         13          0         91        764
-/+ buffers/cache:        635        869
Swap:         2047          6       2041

在这种格式中,可分配 RAM 的有趣数字位于free列中,但在-/+ buffers/cache排。

相关必读网站: http://www.linuxatemyram.com/

相关内容