我有Nginx + php5-fpm。我的网站每小时卡住几次,在日志文件中我看到以下内容:
警告:[pool www] 服务器达到 pm.max_children 设置 (5),请考虑提高它。
/etc/php5/fpm/pool.d/www.conf文件包含如下配置:
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
Run Code Online (Sandbox Code Playgroud)
服务器: AMD Opteron™ 3280,八核,8x 2.4 GHz,16 GB DIMM (DDR3)。
我不知道应该在该服务器的 www.conf 文件中输入什么数字。我可以帮助别人吗?谢谢
rep*_*lay 56
您的 PHP-FPM 达到max_children. 最常见的是:
max_children看你机器的规格,假设除了 PHP+Nginx 运行没有别的,我想你可以把它设置得比 5 高很多。你说你有 8 个内核,通常 Nginx 需要的 CPU 比 PHP 少得多,所以有 5 个孩子你可能永远无法使用所有这些。我通常将其设置为内核数 x 2或内核数 x 4 之类的值,具体取决于 PHP 脚本的内存消耗。
小智 28
我发现通过设置 pm.max_requests 值(默认情况下已注释掉)有助于修复这些错误。此设置强制子请求在执行一定数量的请求后重新生成,如果您的代码或第 3 方库中的某处存在内存泄漏,则此设置会很有帮助。
在/etc/php-fpm.d/www.conf 中:
pm.max_requests = 500
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
155643 次 |
| 最近记录: |