+
95
-

php–fpm僵尸进程如何自动清除?

php

php–fpm僵尸进程如何自动清除?


网友回复

+
15
-

在 PHP-FPM 环境中,僵尸进程(Zombie Process)通常是由于子进程在完成任务后没有被父进程正确回收而导致的。为了自动清除这些僵尸进程,可以采取以下几种方法:

方法一:调整 PHP-FPM 配置

PHP-FPM 配置文件(通常是 php-fpm.conf 或 www.conf)中,有一些参数可以帮助管理进程,减少僵尸进程的出现。

1.1 配置 pm.max_children

确保 pm.max_children 的值设置得合适,这个参数定义了 PHP-FPM 可以创建的最大子进程数。如果这个值设置得过高,系统可能会创建太多子进程,导致资源耗尽和僵尸进程的出现。

pm.max_children = 50
1.2 配置 pm.max_requests

pm.max_requests 参数设置每个子进程在被重启之前可以处理的最大请求数。通过设置这个值,可以防止子进程长期运行导致的问题。

pm.max_requests = 500
方法二:使用 supervisord 管理 PHP-FPM

supervisord 是一个进程管理工具,可以用来监控和管理 PHP-FPM 进程,确保它们正常运行并自动重启有问题的进程。

2.1 安装 supervisord
sudo apt-get install supervisor
2.2 配置 supervisord

创建一个配置文件来管理 PHP-FPM 进程,例如 /etc/supervisor/conf.d/php-fpm....

点击查看剩余70%

我知道答案,我要回答