PHP报错WARNING: [pool www] seems busy怎么解决

今天一个盆友找到我说最近网站总是时不时有502的报错,爱游简单的看了下PHP日志发现WARNING警告

如下:

[20-Sep-2019 16:49:20] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are 0 idle, and 27 total children
[20-Sep-2019 16:49:21] WARNING: [pool www] server reached pm.max_children setting (30), consider raising it
[20-Sep-2019 17:10:48] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 4 idle, and 17 total children

首先分析验证问题:

  1. 报警级别“WARNING”,也就是说业务受到的影响比较小,实际验证也是这样。
  2. 日志第二条还提到了并发数达到设定的30,需要提升。
  3. php-fpm的进程数比较少,建议增加 pm.start_servers, or pm.min/max_spare_servers
  4. 增加到多少呢?spawning 8,也就是说至少得8个进程;

怎么去解决此问题呢?如果你是用的BT宝塔面板,直接在PHP设置→性能调整里面把并发数调到50即可。

如果你是自己配置的服务器那么找到[code]php-fpm.conf[/code]这个文件,把以下数值修改到合适的数值即可:

pm.max_children = 50            --允许创建的最大子进程数
pm.start_servers = 15             --起始进程数(服务启动后初始进程数量)
pm.min_spare_servers = 15    --最小空闲进程数(清理空闲进程后的保留数量)
pm.max_spare_servers = 35   --最大空闲进程数(当空闲进程达到此值时清理)

注意:上面的数值请根据的网站的访问量来修改。

以上就是PHP报错WARNING: [pool www] seems busy的解决方法。

未经允许不得转载:BINCODE » PHP报错WARNING: [pool www] seems busy怎么解决

赞 (0)