Laravel 部署:PHP-fpm 配置调优
使用 ps aux|grep php-fpm
查看 php-fpm 进程,可以看到有三个子进程。
进程数是由 / etc/php/7.4/fpm/pool.d/www.conf
指定的:
pm = dynamic:子进程的数量是根据以下指令来动态生成的
pm.max_children
pm.start_servers
pm.min_spare_servers
pm.max_spare_servers
pm = ondemand:在服务启动的时候根据 pm.start_servers
指令生成进程,而非动态生成。
pm = static:子进程的数量是由 pm.max_children
指令来确定的。
安装好,默认是 pm = dynamic
如果服务器内存小,可以默认就好,大内存服务器则可以设置为 pm = static
,然后 pm.max_children
数量根据服务器的内存来决定,这样就可以最大化服务器负载能力。
如何配置
环境
PHP 7.4
这边示例,调为 10 个: pm.max_children = 10
设置好重启 php-fpm:sudo systemctl restart php7.4-fpm
最后看下是否成功:
更多详细信息可以查看 PHP-FPM 调优:使用 ‘pm static’ 来最大化你的服务器负载能力
Last updated