每当流量短时间激增(一次超过 200 个用户)时,我们的 Apache 服务器就会崩溃。我们必须手动重启它才能使其重新上线。
我希望找到一些常见问题,以便我们能够研究并解决此问题。请告诉我任何可以帮助进一步解决问题的详细信息。
错误日志
[mpm_prefork:error] [pid 13775] AH00161: server reached MaxRequestWorkers setting, consider raising the MaxRequestWorkers setting
prefork 设置
<IfModule mpm_prefork_module>
StartServers 16
MinSpareServers 24
MaxSpareServers 50
MaxRequestWorkers 100
MaxConnectionsPerChild 0
</IfModule>
DigitalOcean Droplets
网络服务器
- Ubuntu 14.04 x64
- 1GB 内存 / 1 核 / 30GB SSD / 2TB 传输
- Laravel 5.0
MySQL 数据库服务器
- Ubuntu 14.04 x64
- 1GB 内存 / 1 核 / 30GB SSD / 2TB 传输
- max_connections:无限制
每当流量激增时,我们就会遇到崩溃:
答案1
您发布的错误日志显示“考虑提高 MaxRequestWorkers 设置”。这将允许更多同时连接。
我建议你考虑提高 MaxRequestWorkers 设置,然后报告。如果你不知道怎么做,Google 是你的好朋友,但看起来你已经找到了。
使用类似围城进行性能和可扩展性测试,最好在您的测试环境中。