![PHP-FPM 子进程每天午夜重生三次](https://linux22.com/image/1208510/PHP-FPM%20%E5%AD%90%E8%BF%9B%E7%A8%8B%E6%AF%8F%E5%A4%A9%E5%8D%88%E5%A4%9C%E9%87%8D%E7%94%9F%E4%B8%89%E6%AC%A1.png)
我刚刚注意到这发生在我所有运行 php7.4-fpm 的 Ubuntu 20.04 服务器上。php-fpm 错误日志显示所有子进程每晚(早上)在午夜时分重生,但奇怪的是它们会在大约 4 秒内再次重生,然后在不到一秒的时间内再次重生,然后稳定下来。重复上述步骤。我没有可以执行此操作的 cron 作业,在生产服务器上,pm.max_requests 是 50000,在开发服务器上是 500,甚至还没有达到这个值。唯一的午夜 cron 作业是 /etc/cron.d/atop。到目前为止,我在任何服务器日志中都找不到其他有用的东西。
编辑:将停止改为重生
还有什么想法可以调查吗?
答案1
好的,搞清楚了!如果 /run/systemd/system 存在,logrotate 每日 cron 作业不会执行任何操作。相反,这是由于 logrotate systemd 计时器,它是每日 systemd 日历的一部分,如图所示systemctl list-timers
,它确实显示 logrotate 每天在 00:00:01 运行。
昨晚没有发生额外的重生,这可能是因为我修复了一个不相关的问题,即 PECL 构建失败导致 /tmp/pear 损坏。