php-fpm 进程管理的三种模式
php-fpm进程管理一共有三种模式:ondemand、static、dynamic
ondemand
在php-fpm启动的时候,不会给这个pool启动任何一个worker,是按需启动,当有连接过来才会启动。
优缺点
优点:按流量需求创建,不浪费系统资源(在硬件如此便宜的时代,这个优点略显鸡肋)
缺点:由于php-fpm是短连接的,所以每次请求都会先建立连接,建立连接的过程必然会触发上图的执行步骤,所以,在大流量的系统上master进程会变得繁忙,占用系统cpu资源,不适合大流量环境的部署
dynamic
在php-fpm启动时,会初始启动一些worker,在运行过程中动态调整worker数量,worker的数量受限于pm.max_children配置,同时受限全局配置process.max
优缺点
优点:动态扩容,不浪费系统资源,master进程设置的1秒定时器对系统的影响忽略不计;
缺点:如果所有worker都在工作,新的请求到来只能等待master在1秒定时器内再新建一个worker,这时可能最长等待1s;
static
php-fpm启动采用固定大小数量的worker,在运行期间也不会扩容,虽然也有1秒的定时器,仅限于统计一些状态信息,例如空闲worker个数,活动worker个数,网络连接队列长度等信息。
相关推荐
WFMoonlight 2020-08-17
zhaowj00 2020-07-30
有梦就能实现 2020-06-26
Skyline 2020-06-25
dajiangqingzhou 2020-05-07
olyqcool 2020-05-10
jkzyx 2020-04-25
aaLiweipeng 2020-04-25
aaLiweipeng 2020-04-25
igogo00 2020-03-04
Skyline 2020-03-01
zhaowj00 2020-02-19
amberom 2020-02-18
JF0 2020-02-02
技术渣 2013-05-13
igogo00 2019-12-30
doupoo 2020-01-09