在Ubuntu系统中,PHP-FPM(FastCGI Process Manager)用于管理PHP进程。你可以通过修改配置文件来设置资源限制。以下是一些常见的资源限制设置:
打开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。
使用文本编辑器打开配置文件,例如:
sudo nano /etc/php/7.4/fpm/pool.d/www.conf
设置最大子进程数:
在配置文件中找到pm.max_children选项,设置允许的最大子进程数。这个值取决于你的系统内存和应用程序需求。例如:
pm.max_children = 50
设置每个子进程的最大请求数:
在配置文件中找到pm.max_requests选项,设置每个子进程在重启之前可以处理的请求数。这有助于防止内存泄漏。例如:
pm.max_requests = 500
设置CPU亲和性:
如果你想限制PHP-FPM进程使用的CPU核心,可以在配置文件中找到pm.setcpubuf选项。例如,如果你想让PHP-FPM进程只在第一个CPU核心上运行,可以设置为:
pm.setcpubuf = 0
设置内存限制:
在配置文件中找到php_admin_value[memory_limit]选项,设置每个子进程允许使用的最大内存。例如:
php_admin_value[memory_limit] = 128M
保存并关闭配置文件。
重启PHP-FPM服务以应用更改:
sudo systemctl restart php{version}-fpm
将{version}替换为你的PHP版本号,例如:sudo systemctl restart php7.4-fpm。
请注意,这些设置可能需要根据你的应用程序和服务器资源进行调整。在进行更改之前,请确保了解每个选项的含义以及它们如何影响你的系统。