我的服务器上有一个 apache(512mb ram)。问题是每个 prefork 进程(大约有 12 个)在等待时占用大约 3%-5% 的内存(我的意思是 httpd2-prefork 进程 Apache 启动以处理传入的连接),而当它们等待时大约占用 8%在职的。我们有一个 Symfony 应用程序和几个 wordpress 博客。
这是正常的吗?我放弃了 MaxClients 数量以保持服务器稳定,但这给我们带来了很多麻烦,因为同时连接 3 个用户可能会导致服务器崩溃。
问候
这种内存占用是完全正常的。我没有得到的部分是 5-8% 的内存使用率究竟是如何给您带来问题的?
您可以禁用不需要的 Apache 模块和/或切换到一些更轻的替代方案,例如lighttpd或nginx,但根据您的描述,我认为这没有必要。
编辑:评论澄清了情况。如果升级 RAM 不是一个选项,那么考虑迁移到 lighttpd + FastCGI/fcgid。这样就可以更精确地控制内存使用,因为只有 X 个 PHP 工作人员背景,而 lighttpd 可以专注于为 http 请求提供服务。目前并不是 Apache 本身在为您占用 RAM,而是 mod_php 和 PHP 脚本——Wordpress 等可能非常需要内存。