【发布时间】:2015-04-09 08:12:22
【问题描述】:
目前,我正在使用安装了 Apache2 的 c3.2xlarge Amazon EC2 实例(8 个 vCPU 和 15GB 的 RAM)。服务器几乎每次都处于高负载状态,因此,有时它会挂起并且 CPU 会过载几分钟。健康检查报告该实例处于不健康状态。但是,这是我在服务器处于“工作日”模式时看到的运行 htop 的内容:
如您所见,CPU 运行良好,但仅使用了 15 个 RAM 中的 2GB。
这是mpm_prefork.conf 文件:
<IfModule mpm_prefork_module>
StartServers 20
MinSpareServers 20
MaxSpareServers 30
ServerLimit 360
MaxClients 360
MaxRequestWorkers 360
MaxConnectionsPerChild 1000
</IfModule>
这是apache2.conf的一部分:
Timeout 200
KeepAlive On
MaxKeepAliveRequests 700
KeepAliveTimeout 5
我已经将 ServerLimit 和 MaxClients 从 150 更改为 360,情况似乎更好(之前只使用了 1GB 的 RAM)。
如何使用 prefork/apache 配置优化性能以存档更多的 RAM 使用和更少的 CPU 限制?
【问题讨论】:
标签: apache amazon-web-services amazon-ec2 apache2