php fpm子进程数配置,php-fpm进程管理方式以及子进程数量配置原则详解

php-fpm的进程管理方式pm是一个重要的参数,主要来控制子进程的数量。

pm进程管理方式有三种:

static:

表示在php-fpm运行时直接fork出 pm.max_chindren个子进程

dynamic:

表示,运行时fork出pm.start_servers个进程,随着负载的情况,动态的调整,最多不超过pm.max_children个进程。同时,保证闲置进程数不少于pm.min_spare_servers数量,否则新的进程会被创建,当然也不是无限制的创建,最多闲置进程不超过pm.max_spare_servers数量,超过则一些闲置进程被清理。

ondemand:

当有请求时,创建进程,启动不创建,最多不超过pm.max_chindren进程数,当进程闲置会在pm.process_idle_timeout秒后被及时释放。

如果选择配置pm参数?

dynamic适合小内存机器,灵活分配进程,省内存。static适用于大内存机器,动态创建回收进程对服务器资源也是一种消耗。一般大访问量应用不会选择ondemand,因为fork一次性大量进程开销很大。

PHP-FPM子进程数量应该如何设置?

一般生产环境会选择static方式

关于max_children, [能利用内存数/(单个进程内存数 * 1.2)];另外一种方式,可将其设置较大[能利用内存数/单个进程内存数],然后观察(PHP-FPM的运行状态),通过max active processes参数来合理配置。

关于start_servers、min_spare_servers、max_spare_servers官方有个建议公式:

start_servers = min_spare_servers + (max_spare_servers - min_spare_servers) / 2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值