linux

php-fpm在Linux上的资源限制如何设置

小樊
88
2025-02-16 19:20:44
栏目: 编程语言

在Linux上,可以通过以下几种方式来设置PHP-FPM的资源限制:

  1. 使用systemd服务文件设置资源限制

如果你的系统使用systemd管理服务,可以在PHP-FPM的服务文件中设置资源限制。通常,该文件位于/etc/systemd/system/php-fpm.service/lib/systemd/system/php-fpm.service。在[Service]部分添加以下内容:

LimitNOFILE=65535
LimitMEMLOCK=infinity

这将分别设置文件描述符限制为65535和内存锁定限制为无限制。你可以根据需要调整这些值。

  1. 使用cgroups设置资源限制

cgroups(控制组)是Linux内核的一个功能,可以用来限制进程组的资源使用。要使用cgroups限制PHP-FPM的资源,请按照以下步骤操作:

sudo apt-get install cgroup-tools
sudo cgcreate -g memory,cpu:/php-fpm
echo "1G" | sudo tee /sys/fs/cgroup/memory/php-fpm/memory.limit_in_bytes
echo "50%" | sudo tee /sys/fs/cgroup/cpu/php-fpm/cpu.cfs_quota_us

这将限制PHP-FPM进程组的内存使用为1GB,CPU使用为50%。

sudo systemctl restart php-fpm
  1. 使用ulimit设置资源限制

ulimit命令可以用来设置shell会话的资源限制。要使用ulimit限制PHP-FPM的资源,请按照以下步骤操作:

ulimit -n 65535
ulimit -m unlimited

这将分别设置文件描述符限制为65535和内存锁定限制为无限制。

sudo systemctl restart php-fpm

请注意,这些方法可能会相互冲突。建议只使用一种方法来设置资源限制。

0
看了该问题的人还看了