Flask/Gunicorn有4名工人:长期投票会阻止工人吗?

Joh*_*ton 6 python flask gunicorn

我写了这样的东西(有更多的代码,重要的部分是sleep(5)):

def get(self):
    import time
    time.sleep(5)
    return jsonify({'result':'OK'})
Run Code Online (Sandbox Code Playgroud)

我像这样启动我的服务器:

gunicorn serve:app -b 127.0.0.2:8000 -w 4
Run Code Online (Sandbox Code Playgroud)

应用程序"正在睡觉"是阻止整个工作人员?这会如何影响gunicorn回应的能力?

Daz*_*all 6

gunicorn将默认使用同步工作程序,它一次只能处理一个请求,因此是的,将在长轮询的生命周期内使用该工作程序.gunicorn确实支持异步工作程序,这将允许工作人员在长轮询期间提供其他请求 - 请参阅选择工作人员类型:

gunicorn -k gevent -b 127.0.0.1:8000 serve:app
Run Code Online (Sandbox Code Playgroud)