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

2019年9月25日22:19:46 评论 551

今天一个盆友找到我说最近网站总是时不时有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的解决方法。

  • “爱游博客”微信公众号
  • 关注微信公众号,分享前沿资讯!
  • weinxin
  • “爱游博客”微信小程序
  • 微信扫一扫,资讯唾手可得!
  • weinxin
阿里云首次购买高性能云服务器,享低至2折优惠