在Ubuntu中选择PHP-FPM进程管理器,需根据服务器资源及业务场景选择模式并配置参数,具体如下:
static(静态模式)
pm=static,并指定pm.max_children(建议为(总内存-系统预留内存)÷单个进程内存,如16GB内存服务器可设为120)。dynamic(动态模式)
pm=dynamic,并调整以下参数:
pm.start_servers:初始进程数,建议为CPU核心数×2(如4核设为8)。pm.min_spare_servers:最小空闲进程数,建议为CPU核心数(如4核设为4)。pm.max_spare_servers:最大空闲进程数,建议为CPU核心数×4(如4核设为16)。ondemand(按需模式)
pm=ondemand,并设置较大的pm.process_idle_timeout(如60s),减少进程频繁创建。编辑配置文件:
sudo nano /etc/php/{版本}/fpm/pool.d/www.conf
({版本}替换为实际PHP版本,如7.4、8.1)。
修改进程管理参数:
pm = dynamic # 选择模式
pm.max_children = 50
pm.start_servers = 8
pm.min_spare_servers = 4
pm.max_spare_servers = 16
pm.process_idle_timeout = 15s
重启服务生效:
sudo systemctl restart php{版本}-fpm
sudo systemctl status php{版本}-fpm
sudo tail -f /var/log/php{版本}-fpm.log
htop、php-fpm status)监控进程数及资源占用,动态调整参数。参考来源: