要优化 Ubuntu 上的 PHP-FPM 并发数,您可以调整以下配置参数:
/etc/php/{php_version}/fpm/pool.d/www.conf。使用文本编辑器打开它,例如:sudo nano /etc/php/{php_version}/fpm/pool.d/www.conf
将 {php_version} 替换为您正在使用的 PHP 版本,例如 7.4。
pm 参数。pm 参数决定了 PHP-FPM 使用的工作模式。有三种可选模式:static、dynamic 和 ondemand。对于大多数场景,dynamic 是最佳选择,因为它可以根据负载自动调整进程数量。将 pm 参数设置为 dynamic:pm = dynamic
pm.max_children 参数。这个参数决定了 PHP-FPM 可以同时处理的最大请求数。根据您的服务器内存和应用程序需求进行调整。例如,如果您有 512MB 内存,可以将其设置为 50:pm.max_children = 50
pm.start_servers 参数。这个参数决定了 PHP-FPM 启动时的初始进程数量。通常,将其设置为与 pm.min_spare_servers 相同的值是个好主意。例如:pm.start_servers = 5
pm.min_spare_servers 和 pm.max_spare_servers 参数。这两个参数决定了 PHP-FPM 在空闲时保留的最小和最大进程数量。根据您的应用程序需求进行调整。例如:pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests 参数。这个参数决定了每个子进程在重启之前可以处理的请求数。这有助于防止内存泄漏。将其设置为一个合适的值,例如 500:pm.max_requests = 500
保存更改并退出文本编辑器。
重启 PHP-FPM 服务以应用更改:
sudo systemctl restart php{php_version}-fpm
将 {php_version} 替换为您正在使用的 PHP 版本,例如 7.4。
请注意,这些参数的最佳值可能因应用程序和服务器配置而异。在调整这些参数时,请务必监控服务器性能和资源使用情况,以确保最佳性能。