我是新的Linux服务器pipe理,我想弄清楚,如果我需要一个更大的机器。 看来我的机器(运行apache2,php5,ubuntu)在没有任何stream量时正在使用其内存的80%。
top Mem: 501392k total, 398704k used, 102688k free, 22508k buffers Swap: 499996k total, 868k used, 499128k free, 242296k cached free -m total used free shared buffers cached Mem: 489 389 100 0 21 236 -/+ buffers/cache: 130 358 Swap: 488 0 487
我不知道如果我正在阅读这个权利,但似乎Ubuntu的caching使用了大量的内存,但我不知道这是多高效,或者如果我应该改变我的服务器configuration。
你的机器有100MB的空闲空间,使用大约260MB的caching和caching。 有没有简单的方法知道有多less内存正在使用caching它“需要”,或性能是否有更多的内存帮助。 过多的磁盘I / O是一个好兆头,更多的内存会有所帮助,因为它会允许更大的caching。
您的系统正在使用内存的一个简单的原因 – 没有任何好处,使其免费。 如果这个记忆没有被使用,那么免费是浪费精力。 如果它被使用了,那么免费又浪费了精力,因为它将不得不再次被使用。 现代操作系统可以轻松地将内存从一个用户转移到另一个用户,而不必费心使用。 现代操作系统只有在没有select的情况下才会使内存空闲。
完全知道你的系统是什么可能有点难以理解。 这是一个更加graphics的方式来查看您的系统称为htop。
您可以使用以下命令安装它:
sudo apt-get install htop
除了显示正在使用的内存量的graphics条之外,还显示了用于颜色编码的内容。 在下面的例子中,应用程序(zimbra)正在使用以下内容:
大量的活动内存(绿色)。
一些缓冲区(蓝色)。
交换/caching的一部分在内存中(黄色)。

还有一些提示给你:
您可以通过使用监视您的apache访问日志来检查您的服务器是否在使用中
tail -f /var/log/apache2/access.log
这将为您提供访问日志的实时stream。
你也可以使用iftop,就像htop一样,它可以给你一个什么样的stream量以什么速度stream向什么位置的graphics表示。
安装使用
sudo apt-get install iftop
Linux几乎总是将所有可用的内存用于磁盘缓冲区(=caching)。 这也是你的盒子上发生的事情。 这是正常的,没有报警的原因。 当你的程序确实需要RAM时,caching页面会被丢弃。
此外,为了获得更好的内存(和其他资源)使用的印象,我build议你看看一个名为“htop”的命令行程序。 只需使用apt-get安装,并从命令行运行。