php

您所在的位置:网站首页 进程数量上限 php

php

2024-01-14 02:55| 来源: 网络整理| 查看: 265

找到php-fpm.conf:

whereis php-fpm.conf

查看配置子文件位置,找到“include=/etc/php-fpm.d/*.conf”,大部分配置在子文件中。

问题一:PHP-FPM 子进程数量,是不是越多越好?

当然不是,pm.max_chindren,进程多了,增加进程管理的开销以及上下文切换的开销。

更核心的是,能并发执行的 php-fpm 进程不会超过 cpu 个数。

如何设置,取决于你的代码,如果代码是 CPU 计算密集型的,pm.max_chindren 不能超过 CPU 的内核数。

如果不是,那么将 pm.max_chindren 的值大于 CPU 的内核数,是非常明智的。

大概计算公式:

在 N + 20% 和 M/m 之间。

N 是 CPU 内核数量。

M 是 PHP 能利用的内存数量。

m 是每个 PHP 进程平均使用的内存数量。

适用于 dynamic 方式。

static方式:M/(m * 1.2)

当然,还有一种保险的方式,来配置 max_children。适用于 static 方式。

先把 max_childnren 设置成一个比较大的值。

稳定运行一段时间后,观察 php-fpm 的 status 里的 max active processes 是多少

然后把 max_children 配置比它大一些就可以了。

pm.max_requests:指的是每个子进程在处理了多少个请求数量之后就重启。 pm.start_servers:动态方式下的起始php-fpm进程数量。 pm.min_spare_servers:动态方式空闲状态下的最小php-fpm进程数量。 pm.max_spare_servers:动态方式空闲状态下的最大php-fpm进程数量。

如果dm设置为static,那么其实只有pm.max_children这个参数生效。系统会开启参数设置数量的php-fpm进程。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3