通过 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 后会被杀掉,最终没有任何子进程。这种模式使用最少,主要是节省服务器资源,空闲后首次启动,响应较慢。