调整Linux PHP-FPM参数可以优化PHP应用程序的性能。以下是一些常见的PHP-FPM参数及其调整方法:
pm 参数pm 参数决定了PHP-FPM的进程管理方式。常见的值有 dynamic、static、ondemand 和 lazy。
dynamic: 根据负载动态调整进程数。
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
static: 固定数量的进程。
pm = static
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
ondemand: 按需启动进程。
pm = ondemand
pm.process_idle_timeout = 10s
lazy: 类似于 ondemand,但会延迟启动进程。
pm = lazy
pm.process_idle_timeout = 10s
request_terminate_timeout 参数设置请求的最大执行时间,防止长时间运行的脚本占用资源。
request_terminate_timeout = 30s
memory_limit 参数设置每个PHP进程的内存限制。
memory_limit = 128M
upload_max_filesize 和 post_max_size 参数设置上传文件的最大大小和POST请求的最大大小。
upload_max_filesize = 20M
post_max_size = 20M
max_execution_time 参数设置脚本的最大执行时间。
max_execution_time = 30
cgi.fix_pathinfo 参数禁用CGI路径信息修复,提高安全性。
cgi.fix_pathinfo = 0
open_basedir 参数限制PHP脚本可以访问的文件目录。
open_basedir = /var/www/html/:/tmp/
备份配置文件:在修改任何配置文件之前,务必备份原始文件。
cp /etc/php/7.4/fpm/php-fpm.conf /etc/php/7.4/fpm/php-fpm.conf.bak
编辑配置文件:使用文本编辑器(如 nano 或 vim)编辑PHP-FPM配置文件。
sudo nano /etc/php/7.4/fpm/php-fpm.conf
修改参数:根据需要修改上述参数。
重启PHP-FPM服务:保存配置文件后,重启PHP-FPM服务以应用更改。
sudo systemctl restart php7.4-fpm
调整参数后,监控PHP-FPM的性能和资源使用情况,根据实际情况进一步微调参数。可以使用工具如 top、htop、php-fpm status 等来监控。
通过以上步骤,你可以有效地调整Linux PHP-FPM参数以优化PHP应用程序的性能。