php |
您所在的位置:网站首页 › 进程数量上限 › php |
找到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 |