【发布时间】:2017-12-26 17:40:57
【问题描述】:
所以我在烧瓶网络服务器上使用 gunicorn 网络服务器。对服务器的 5 个请求中有 3 个失败并出现以下错误:
Exception: I/O error on POST
Connection refused (Connection refused); nested exception is org.apache.http.conn.HttpHostConnectException
我在运行此 gunicorn 网络服务器的 docker 容器的 2 核 VM 上有 4 个工作节点。 这个异常对 gunicorn 的人来说是不是很熟悉? 从异常中,我明白没有什么可以监听请求可能是因为所有工作人员都忙于处理其他请求。
不确定如何解决此问题。它将工人从 4 个增加到 9 个,但没有运气。
docker 文件有以下 gunicorn 条目
EXPOSE 5000
ENTRYPOINT ["/usr/local/bin/gunicorn", "--config", "/src/gunicConfig.py", "driverApp:app"]
gonicConfig.py 看起来像这样:
bind = "0.0.0.0:5000"
workers = 4
【问题讨论】:
-
分享更多关于您的设置的详细信息。此时我们只能猜测。
-
我在 dockerfile 和 gunicorn 配置条目中添加了 gunicorn 相关条目。不知道还需要什么。这样就够了吗?
-
gunicorn 有像 uWSGI 这样的统计服务器吗?这应该使了解工人在做什么变得微不足道。也许您的客户端使用连接池并保持连接打开,直到它们启动?您是否运行反向代理?
-
没有反向代理。客户端没有连接池。我会看看 uWSGI 告诉我的有关工人的信息。