【问题标题】:Python Tornado too many files openPython Tornado 打开的文件太多
【发布时间】:2017-10-09 00:22:08
【问题描述】:

我有 tornado websocket 服务器,前面有 nginx。我的文件打开文件限制设置为 1000000,我仍然收到以下错误:

file "/usr/lib/python2.7/socket.py", line 206, in accepterror: [Errno 24]  Too many open files

当我运行sudo sysctl -p 时,我得到fs.file-max = 1000000

无法达到限制,因为服务器仅启动并运行了 12 小时(100-200 个会话)

什么可能导致这个错误?

【问题讨论】:

  • 检查进程限制cat /proc/PID_OF_THE_PROCESS/limits

标签: python nginx tornado


【解决方案1】:

您可以通过lsof获取详细信息,查看哪个processsocket使用了您的fd

【讨论】:

    【解决方案2】:

    尝试了以下 StackOverflow 主题的解决方案?

    socket.accept error 24: To many open files

    【讨论】:

      【解决方案3】:

      fs.file-max 是系统范围的限制。还有一个每个进程的限制(默认情况下要小得多,通常为 1024 或更少)。每个进程的限制由/etc/security/limits.confulimit 命令控制。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-05-22
        • 1970-01-01
        • 1970-01-01
        • 2016-04-21
        • 2013-05-07
        • 2013-05-03
        相关资源
        最近更新 更多