我希望我的flask应用程序能够同时处理多个呼叫。我一直在测试与运行threaded=True
或者processes=3
与下面的代码,但是当我做两次调用服务器后总是要等待第一个完成。我知道建议将应用程序部署在更复杂的WSGI容器上,但是现在我只希望我的小型应用程序能够一次处理2个调用。
from flask import Flask, Response, stream_with_context
from time import sleep
app = Flask(__name__)
def text_gen(message):
for c in message:
yield c
sleep(1)
@app.route("/")
def hello():
stream = text_gen('Hello World')
return Response(stream_with_context(stream))
if __name__ == "__main__":
app.run(host='0.0.0.0', port=8080, debug=True, threaded=True)
@卢卡斯是对的。
我正在使用两个标签在Google Chrome浏览器中进行调试。显然,Chrome试图通过对两个标签使用相同的套接字来变得聪明。-socket-reuse-policy
启动Chrome时,Chrome如何处理带有标志的更改。
一种更简单的测试方法是,在每个选项卡中使用不同的主机名,或使用curl -N
(-N
标志(无缓冲区,以查看流)。这样做确实确实按预期工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句