Web 服务器内存不足

Web 服务器内存不足

我有一个具有 2 GB 内存的 EC2 小型实例,运行 Fedora Linux。

通常,我每天平均获得大约 275 个页面浏览量,并且我在机器上有一个监控代理。一些统计数据在可用内存方面有点令人担忧。

上周,内存最低时我们只有 30 MB 的可用内存,而今天早上似乎已经增加到 150 MB 左右。Hyperic 是我们的监控代理,它运行 Java。top 显示它的内存使用率仅为 3.4% 左右。

当我把所有的 httpd 进程加起来时,我发现内存使用率大约为 15-20%,而 mysql 只使用了 1% 左右。

Top 没有显示剩余内存的去向。我该怎么做才能找出导致高内存消耗的原因?可能是每天 275 次点击?我们的代码中大约 95% 是 PHP 和 HTML。MySQL 被一个名为 OpenVBX 的应用程序轻度使用,该应用程序仅在内部使用。

如果是 Apache,升级内存应该可以解决我们的问题,对吗?

任何建议都将非常有帮助,谢谢!

更新:免费显示:

             total       used       free     shared    buffers     cached
Mem:       1718724    1575024     143700          0     234328     969284
-/+ buffers/cache:     371412    1347312
Swap:       917500       1140     916360

答案1

基本上,您想要查看缓冲区/缓存行的空闲列,因此您有1.3G空闲信息 - 您可能处于良好状态。

这个著名的页面是“救命!Linux 吃掉了我的内存!”http://www.linuxatemyram.com/

简单来说,Linux 将使用 RAM 来缓存文件并进行排序,以便能够更快地传输文件。如果某个程序确实需要 RAM,那么它将从缓存中获取 - 但为什么不趁着还可以的时候使用 RAM 呢?

答案2

ps aux|less给出每个进程使用的内存百分比,可能会有一点帮助。

相关内容