在Ubuntu上调整PHP-FPM(FastCGI Process Manager)的连接数,可以通过修改PHP-FPM的配置文件来实现。以下是一些常见的配置选项和步骤:
PHP-FPM的配置文件通常位于 /etc/php/{version}/fpm/pool.d/www.conf
,其中 {version}
是你安装的PHP版本号。例如,如果你安装的是PHP 7.4,配置文件路径可能是 /etc/php/7.4/fpm/pool.d/www.conf
。
打开配置文件并找到以下参数:
pm.max_children
: 这是允许的最大子进程数。pm.start_servers
: 这是启动时的服务器进程数。pm.min_spare_servers
: 这是最小空闲服务器进程数。pm.max_spare_servers
: 这是最大空闲服务器进程数。pm.max_requests
: 这是每个子进程在被重启之前可以处理的请求数。[www]
listen = /run/php/php7.4-fpm.sock
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
根据你的服务器资源和应用需求调整这些参数:
pm.max_children
为20-30。pm.max_children
的1/4到1/3。pm.start_servers
的1.5倍到2倍。修改配置文件后,重启PHP-FPM服务以使更改生效:
sudo systemctl restart php{version}-fpm
例如,如果你安装的是PHP 7.4,命令应该是:
sudo systemctl restart php7.4-fpm
在调整参数后,监控服务器的性能和应用的行为。如果发现性能问题或资源不足,可以进一步调整参数。
fastcgi_pass
配置,指向正确的PHP-FPM socket或端口。通过以上步骤,你可以有效地调优PHP-FPM在Ubuntu上的连接数,以适应你的应用需求和服务器资源。