php-fpm 子进程的三种分配模式

通过 php-fpm.conf 配置文件中 pm 控制项来决定采用何种方式来控制子进程数量,主要有3中方式

static 固定模式

固定有n(n >= 1)个,既不会增加也不会减少。

dynamic 动态模式

至少有1个,启动 pm.start_servers 个,最多可以启动 pm.max_children 个。如果子进程有空闲,且个数小于 - pm.min_spare_servers,则补齐到pm.min_spare_servers,如果大于 pm.max_spare_servers,则降低到 pm.max_spare_servers。这种模式在正式环境中使用比较多。

ondemand 按需启动

没有请求时没有子进程,有请求时启动。最多可以启动 pm.max_children 个,如果有空闲,子进程经过 pm.process_idle_timeout 后会被杀掉,最终没有任何子进程。这种模式使用最少,主要是节省服务器资源,空闲后首次启动,响应较慢。

文档信息
发表日期:2020-02-02