php的fpm进程数设置的方法
   2022-05-05 13:24:43
php fpm进程数设置的方法:
首先打开“php-fpm.conf”配置文件;然后修改“pm.max_children”参数;接着设置“pm.start_servers”参数;最后设置空闲服务进程最大数即可。
1.php-fpm有3种管理方式static(子进程数固定)、dynamic(子进程动态设置)、onedemand(进程需要才产生)
2.php-fpm 进程数主要通过下面5个参数
pm.max_children: pm为static时表示创建的子进程数量,pm为dynamic时表示最大可创建的子进程数
pm.start_servers: 设置启动时创建的子进程数目,仅在pm为dynamic时有效。
默认值:min_spare_servers + (max_spare_servers - min_spare_servers)/2
pm.min_spare_servers: 设置空闲服务进程最低数,仅dynamic时有效。
pm.max_spare_servers: 设置空闲服务进程最大数,仅dynamic时有效。
pm.process_idle_timeout: 秒数,多久之后结束空闲进程,仅onedemand有用
3.php-fpm进程数设置主要由服务器内存决定。php-fpm 进程正常运行时占用内存20-30M。
(1)如果系统并发量不是很大,则采用静态会更好,具体值根据系统请求量来设置。
(2)如果系统并发量抖动比较大,则采用动态会更好,具体值根据系统请求并发量和内存大小设置。
公式:
N 是 CPU 内核数量。
M 是 PHP 能利用的内存数量。
m 是每个 PHP 进程平均使用的内存数量。
dynamic 方式:
在 N + 20% 和 M/m 之间。
static方式:
M/(m * 1.2)
查看每个php-fpm占用的内存大小
ps -ylC php-fpm --sort:rss