我在一台 Ubuntu 的 VPS 上运行 apache2 (2.2),内存为 768MB。不知为何,加载任何页面(甚至是静态 html)都需要几秒钟的时间。我唯一能责怪的组件是 Apache。但是,我不知道它为什么会这样。我甚至安装了 NewRelic,看看它是否能帮助我以更直观、更友好的格式诊断问题。我看到 apache2 使用了大约 400MB 的内存,这似乎很多,但总使用量仍远低于 100%。我仍然不清楚真正的问题是什么,也不知道如何正确诊断它。
根据 top 的内存使用情况(根据回答者的要求):
Mem: 768848k total, 753380k used, 15468k free, 39792k buffers
Swap: 262140k total, 92696k used, 169444k free, 432888k cached
“free -m” 的搜索结果:
total used free shared buffers cached
Mem: 750 733 17 0 35 414
-/+ buffers/cache: 282 467
Swap: 255 90 165
答案1
/server_status
安装 mod_status 并授予您 IP 的URL 访问权限- 这样您就可以看到 Apache 到底在做什么 - 也许有人正在用请求攻击您的服务器- 查看 pstree 以确保 apache 进程总数低于 250 - 250 是一个神奇的限制
- 审查
error.log
并access.log
- 使用
top
并输入“C”或“M”来详细了解系统正在做什么