在Ubuntu系统上,PHP-FPM(FastCGI Process Manager)的连接数设置主要涉及以下几个方面:
PHP-FPM进程管理器:
pm
:进程管理方式,可选值为dynamic
、static
或ondemand
。pm.max_children
:最大子进程数。pm.start_servers
:启动时的服务器进程数。pm.min_spare_servers
:最小空闲服务器进程数。pm.max_spare_servers
:最大空闲服务器进程数。Nginx配置:
fastcgi_pass
:指定PHP-FPM的监听地址和端口。fastcgi_connect_timeout
:连接超时时间。fastcgi_send_timeout
:发送超时时间。fastcgi_read_timeout
:读取超时时间。通常,PHP-FPM的配置文件位于/etc/php/{version}/fpm/pool.d/www.conf
,其中{version}
是PHP的版本号(例如7.4
)。
sudo nano /etc/php/7.4/fpm/pool.d/www.conf
找到并修改以下参数:
; 设置进程管理方式为dynamic
pm = dynamic
; 最大子进程数
pm.max_children = 50
; 启动时的服务器进程数
pm.start_servers = 5
; 最小空闲服务器进程数
pm.min_spare_servers = 5
; 最大空闲服务器进程数
pm.max_spare_servers = 35
通常,Nginx的配置文件位于/etc/nginx/sites-available/default
。
sudo nano /etc/nginx/sites-available/default
找到并修改以下部分:
server {
listen 80;
server_name your_domain.com;
root /var/www/html;
index index.php index.html index.htm;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 或者使用tcp连接:fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
修改配置文件后,需要重启PHP-FPM和Nginx服务以使更改生效。
sudo systemctl restart php7.4-fpm
sudo systemctl restart nginx
systemd-cgtop
或htop
等工具监控PHP-FPM的进程和资源使用情况。pm.max_children
和其他相关参数,以达到最佳性能。通过以上步骤,你可以在Ubuntu系统上配置PHP-FPM的连接数设置。