如何在Ubuntu上限制PHP-FPM资源使用

在Ubuntu上限制PHP-FPM资源使用可以通过配置文件来实现。以下是一些常见的方法:方法一:使用php-fpm.conf和www.conf编辑php-fpm.conf文件:打开/etc/php/7.x/fpm/php-fpm.conf(将7.x替换为你的PHP版本)。sudo nano /etc/php/7.x/fpm/php-fpm.conf找到并修改以下参数:; 设置最大进程数p

在Ubuntu上限制PHP-FPM资源使用可以通过配置文件来实现。以下是一些常见的方法:

方法一:使用php-fpm.confwww.conf

  1. 编辑php-fpm.conf文件
    打开/etc/php/7.x/fpm/php-fpm.conf(将7.x替换为你的PHP版本)。

    sudo nano /etc/php/7.x/fpm/php-fpm.conf
    

    找到并修改以下参数:

    ; 设置最大进程数
    pm.max_children = 5
    
    ; 设置每个子进程的最大请求数
    pm.max_requests = 500
    
    ; 设置进程空闲时间超过此值时自动重启
    pm.process_idle_timeout = 10s
    
  2. 编辑www.conf文件
    打开/etc/php/7.x/fpm/pool.d/www.conf

    sudo nano /etc/php/7.x/fpm/pool.d/www.conf
    

    找到并修改以下参数:

    ; 设置最大进程数
    pm.max_children = 5
    
    ; 设置每个子进程的最大请求数
    pm.max_requests = 500
    
    ; 设置进程空闲时间超过此值时自动重启
    pm.process_idle_timeout = 10s
    

方法二:使用systemd服务配置

如果你使用的是systemd来管理PHP-FPM服务,可以在服务文件中添加资源限制。

  1. 编辑PHP-FPM服务文件
    打开/lib/systemd/system/php7.x-fpm.service(将7.x替换为你的PHP版本)。

    sudo nano /lib/systemd/system/php7.x-fpm.service
    

    [Service]部分添加以下行:

    [Service]
    ...
    LimitNOFILE=65535
    LimitMEMLOCK=infinity
    
  2. 重新加载systemd配置并重启服务

    sudo systemctl daemon-reload
    sudo systemctl restart php7.x-fpm
    

方法三:使用cgroups

如果你需要更细粒度的控制,可以使用cgroups来限制PHP-FPM的资源使用。

  1. 安装cgroup-tools

    sudo apt-get install cgroup-tools
    
  2. 创建一个新的cgroup

    sudo cgcreate -g memory:/php-fpm
    
  3. 设置内存限制

    echo "1G" | sudo tee /sys/fs/cgroup/memory/php-fpm/memory.limit_in_bytes
    
  4. 将PHP-FPM进程移动到新的cgroup

    首先找到PHP-FPM的主进程ID:

    ps aux | grep php-fpm
    

    然后将主进程移动到新的cgroup:

    sudo cgclassify -g memory:/php-fpm <PID>
    

注意事项

  • 修改配置文件后,记得重启PHP-FPM服务以使更改生效。
  • 使用cgroups时,确保你有足够的权限来管理cgroup。
  • 根据你的实际需求调整参数值。

通过以上方法,你可以在Ubuntu上有效地限制PHP-FPM的资源使用。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1396533.html

(0)
派派
上一篇 2025-08-23
下一篇 2025-08-23

发表回复

登录后才能评论