【发布时间】:2020-05-28 02:21:15
【问题描述】:
我的烧瓶 API 的一个端点向直播流发出长请求。下面是代码示例:
@app.route('/stream')
def live_stream(sensor_id):
stream = requests.get('stream_url', stream=True)
return Response(stream_with_context(stream.iter_content(chunk_size=2048)),
content_type=stream.headers['content-type'])
这条路线运行良好,溪流顺利。但是,当我尝试向其他路由发出请求时,服务器似乎卡在了这个端点。
我正在使用 gevent WSGI 服务器:
http_server = WSGIServer(('0.0.0.0', 5000), app).serve_forever()
我正在从一个已经由 Flask 路由返回的模板发出请求。
我怎样才能向 API 发出并行请求而不会被卡住?
【问题讨论】:
-
你能展示/描述
stream_with_context内部发生的事情吗? -
stream_with_context 是 Flask 的默认方法。直播是工作文件,但我无法提出更多请求。
-
你做了猴子补丁吗,在这里提到:stackoverflow.com/questions/14551823/…