打开空闲连接时在gunicorn服务器中阻塞,而不是在uWSGI中

2024-06-28 19:23:52 发布

您现在位置:Python中文网/ 问答频道 /正文

显示我的测试的简单片段:

import flask

app = flask.Flask(__name__)


@app.route('/')
def index():
    return 'Hello, world!'

if __name__ == '__main__':
    app.run(debug=True)

将其保存到^{{cd1>},然后以两种方式开始:

  1. gunicorn-b 127.0.0.1:8000服务器:应用程序
  2. uwsgi--http:8000--模块服务器--可调用应用程序

因此,当它们单独调用时,它们将在localhost上的8000端口侦听。

让我困惑的是,我创建了一个空闲连接^{{cd2>},然后在另一个终端工作区中调用^{{cd3>}然后使用命令^{{cd4>}访问服务器:

  1. curl进程将使用gunicorn服务器阻塞
  2. 但是,在uwsgi方式中,^{{cd5>}立即得到响应,并且与^{{cd2>}的空闲连接仍然存在!

为什么uwsgi在这里不阻塞?我只知道一个工人。谢谢您!


Tags: nameimport服务器app应用程序flaskindexdef