首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >空闲内存很低,缓存内存很高:有这样的内存保存吗?

空闲内存很低,缓存内存很高:有这样的内存保存吗?
EN

Server Fault用户
提问于 2010-02-16 07:52:23
回答 3查看 5.2K关注 0票数 2

我在4G内存服务器上安装了Apache +Mysql+ PHP,每天提供大约20000次访问。下图显示了一天的内存利用率。如图所示:空闲内存低(例如155 M),缓存内存高(例如g2G)。此服务器从未使用交换内存。

  • 我需要增加记忆吗?
  • 低空闲内存而高缓存内存安全吗?
  • 如何找到使用大量缓存内存的应用程序?

非常感谢你的帮助。

EN

回答 3

Server Fault用户

回答已采纳

发布于 2010-02-16 08:10:40

cached内存是VFS使用的磁盘缓存。它会将读取的文件存储在那里,这样它就不必在需要时访问硬盘驱动器,如果某些应用程序需要内存,它将释放一些文件。

你应该问自己的问题是:

  • 它变慢了吗?
  • 它是交换用过的应用程序吗?

如果两个答案都是否定的,那么,你就不需要做任何事情了。即使有些应用程序被交换了一点,也可能是因为已经交换的部分从未被使用过,并且可以安全地存储在交换区上。

这个想法是,只要一切正常工作,不要试图修复它,缓存内存,甚至交换页面是VM操作系统的正常操作。

票数 2
EN

Server Fault用户

发布于 2010-02-16 08:10:15

您的问题并不具体,但我将假设运行apache的系统是基于Linux的。缓存内存是内核用于缓存文件的内存。这通常是好事,也是正常的。在您的系统中拥有什么都不做的内存是很愚蠢的,因为它可能会做一些有用的事情,比如加速访问您的文件。

票数 1
EN

Server Fault用户

发布于 2010-02-16 08:36:53

如前所述,缓存的内存只是存储在硬盘上的数据的内存(fast)缓冲区。您通常会看到,如果使用的内存(由您的应用程序)增加,缓存的计数将减少。在我看来,这是一个相当正常的图表。

您应该考虑的另一个参数是交换使用,一旦您的系统开始使用交换(这是在磁盘内存上,因此速度慢),这意味着您的系统正在运行次优,这意味着增加物理内存。

实际上,在这种情况下,您的操作系统正在如此高效地使用您的内存(通过将它用作磁盘缓存),那么将所有东西读/写到磁盘上(这很慢)是毫无意义的,而您却有大量内存没有被用于任何事情。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/113274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档