AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 479443
Accepted
user1821484
user1821484
Asked: 2013-02-17 02:30:33 +0800 CST2013-02-17 02:30:33 +0800 CST 2013-02-17 02:30:33 +0800 CST

php5-fpm:服务器已达到 pm.max_children

  • 772

我有Nginx + php5-fpm。我的网站每小时有几次卡住,在日志文件中我看到以下内容:

警告:[池 www] 服务器达到 pm.max_children 设置 (5),考虑提高它。

/etc/php5/fpm/pool.d/www.conf文件包含以下配置:

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

服务器: AMD Opteron™ 3280,八核,8x 2.4 GHz,16 GB DIMM (DDR3)。

我不知道我应该在这个服务器的 www.conf 文件中输入什么数字。我可以帮助别人吗?谢谢

php-fpm
  • 2 2 个回答
  • 179584 Views

2 个回答

  • Voted
  1. Best Answer
    replay
    2013-02-17T05:50:15+08:002013-02-17T05:50:15+08:00

    您的 PHP-FPM 会达到max_children. 最常见的是:

    • 来自客户的大量并行请求
    • PHP 脚本执行缓慢
    • 非常低的设置max_children

    查看您机器的规格,假设除了 PHP+Nginx 之外没有其他运行,我认为您可以将其设置为高于 5。您说您有 8 个内核,通常 Nginx 需要比 PHP 少得多的 CPU,所以有 5 个孩子您可能永远无法使用所有这些。我通常将其设置为number of cores x 2或number of cores x 4,具体取决于 PHP 脚本的内存消耗。

    • 65
  2. Tom Jowitt
    2014-02-28T01:46:33+08:002014-02-28T01:46:33+08:00

    我发现通过设置 pm.max_requests 值(默认情况下被注释掉)有助于修复这些错误。此设置会强制子请求在执行一定数量的请求后重新生成,如果您的代码或第 3 方库中某处存在内存泄漏,此设置会很有帮助。

    在/etc/php-fpm.d/www.conf中:

    pm.max_requests = 500
    
    • 36

相关问题

  • Nginx + PHP-FPM = "随机" 502 错误网关

  • PHP-FPM + NGINX:PHP-CGI 进程在空闲一段时间后死亡,然后 502 bad gateway 和需要手动重启

  • 如何使程序从源代码保持最新?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve