微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何处理错误:系统中打开的文件太多了?

我正在运行一个cron并输出到我的id并获得以下作为输出

/bin/sh: /usr/bin/PHP: Too many open files in system

Cron每5分钟跑一次.

已检查/ var / logs / cron和cron每5分钟执行一次.

网站在服务器上正常运行.

这意味着您的系统在PHP或其他应用程序中用尽了文件句柄.确保您打开的任何文件都是 close以释放文件句柄.

要运行每个程序的句柄数,请使用(以root身份):

for p in $(ps -A -o pid); do
    nh=$(ls /proc/$p/fd  2>/dev/null | wc -l) &&
    exe=$(readlink -f /proc/$p/exe  2>/dev/null) &&
    echo "$p ($exe): $nh"
done

要获得更详细的输出,请使用lsof.

您还可以通过modyfing /etc/security/limits.conf(效果更改为/proc/sys/fs/file-max)增加可能的系统文件句柄数,并使用ulimit -n减少当前终端会话的数量.

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

相关推荐