【问题标题】:Gunicorn Connection in Use: ('0.0.0.0', 5000)使用中的 Gunicorn 连接:('0.0.0.0', 5000)
【发布时间】:2013-05-21 07:59:50
【问题描述】:

我今天下午安装了redis,它导致了一些错误,所以我卸载了它,但是当我使用foreman start 启动应用程序时,这个错误仍然存​​在。关于修复的任何想法?

foreman start
22:46:26 web.1  | started with pid 1727
22:46:26 web.1  | 2013-05-25 22:46:26 [1727] [INFO] Starting gunicorn 0.17.4
22:46:26 web.1  | 2013-05-25 22:46:26 [1727] [ERROR] Connection in use: ('0.0.0.0', 5000)

【问题讨论】:

    标签: python django heroku gunicorn foreman


    【解决方案1】:

    检查您的流程。你可能有一个不干净的出口,留下一个仍在运行的僵尸进程。

    【讨论】:

    • 我运行了ps -ax,但无法确定是哪个进程导致了问题。关于寻找什么的任何提示?
    • 我杀死了 gunicorn 进程,一切似乎又恢复了。
    • netstat -tulpn | grep 5000 帮助
    【解决方案2】:

    在网上搜索了一番后,看起来下面的命令是最好用的。这会杀死在端口 5000 上运行的所有进程,并且似乎对我有用:

    kill `lsof -i :5000`
    

    Source (although a bit more shady than I prefer)

    【讨论】:

      【解决方案3】:

      这应该可以为您解决问题:

      kill -9 $(lsof -i:5000 -t) 2> /dev/null

      其中 5000 是您要终止的端口

      【讨论】:

      • 也可以在 Mac 上使用
      【解决方案4】:

      只需输入

      sudo fuser -k 5000/tcp
      

      .这将杀死与端口 5000 关联的所有进程

      【讨论】:

        【解决方案5】:

        找到孤立的进程:

        ps -ax |grep gunicorn
        
        11111 ?? 0:03.44 /usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/Resources/Python.app/Contents/MacOS/Python /usr/local/bin/gunicorn -b :5000 main:app
        

        找到进程 ID(结果第一列中的数字)

        kill 11111
        

        将 11111 替换为进程 ID

        【讨论】:

          【解决方案6】:

          我知道,如果您运行的是 MacOS,您可能会看到“ControlCe”列为进程。你可以杀死它,但它只会重新启动。经过一番搜索,我发现控制中心使用 5000 来监听 Airplay Receiver 请求。您可以通过 System Preferences>Sharing>Airplay Receiver 禁用此功能。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-06-11
            • 2021-06-01
            • 1970-01-01
            • 2016-10-14
            • 2018-12-25
            • 1970-01-01
            相关资源
            最近更新 更多