php-fpm 警告“无法获取记分牌”是什么?

php-fpm 警告“无法获取记分牌”是什么?

fpm 错误日志中的 php-fpm 警告“无法获取记分牌”是什么?怎么解决它?

tail -f /var/log/php-fpm.log
[08-Oct-2014 03:36:36] WARNING: failed to acquire scoreboard
[08-Oct-2014 03:40:39] WARNING: failed to acquire scoreboard
[08-Oct-2014 03:42:54] WARNING: failed to acquire scoreboard
[08-Oct-2014 03:47:01] WARNING: failed to acquire scoreboard

用例:

php 版本 5.4.25

php-fpm 实例(例如“pf-9000”)正在使用 fastcgi 协议连接到同一服务器上的第二个 php-fpm 实例(例如“pf-9005”)。两个 php-fpm 实例上都可以看到此错误。

请求流程:

web client -> nginx -> pf-9000 -> pf-9005

响应流程:

pf-9005 -> pf-9000 -> nginx -> web client

答案1

来自一个答案堆栈溢出

记分板是一种保存 FPM 池及其工作线程状态的结构。记分板在共享内存中创建,如果无法分配该内存,则会记录错误。

这个答案还提到了源代码错误发生的位置。

如何修复?

首先,看一下sysctl内存限制: 如何配置共享内存

sysctl -a | grep -E "shmall|shmmax"

或者

ipcs -lm

相关内容