Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python gunicorn、flask和Nginx的流式服务器问题_Python_Nginx_Flask_Streaming_Gunicorn - Fatal编程技术网

Python gunicorn、flask和Nginx的流式服务器问题

Python gunicorn、flask和Nginx的流式服务器问题,python,nginx,flask,streaming,gunicorn,Python,Nginx,Flask,Streaming,Gunicorn,我正在使用gunicorn和flask进行web服务。我正试着让我的大脑去运行流媒体路由(不确定这是否是正确的术语) 我的路线如下所示: @app.route('/delay') def delay(): from time import sleep def delay_inner(): for i in range(10): sleep(5) yield json.dumps({'delay': i}) r

我正在使用gunicorn和flask进行web服务。我正试着让我的大脑去运行流媒体路由(不确定这是否是正确的术语)

我的路线如下所示:

@app.route('/delay')
def delay():
    from time import sleep
    def delay_inner():
        for i in range(10):
            sleep(5)
            yield json.dumps({'delay': i})
    return Response(delay_inner(), mimetype="text/event-stream")
我希望服务器在每次延迟发生时都会产生输出。但是,我一次得到的是所有json响应,并且只有当延迟完成执行时才得到响应

我错过了什么

--编辑--
我已经修复了Flask和Gunicorn的问题,通过使用Flask服务器并转到Gunicorn端口,我能够按预期运行它。它按预期的方式对数据进行流式处理。然而,我应该在最初的帖子中提到这一点,我也支持nginx。这是没有正确设置为流。有人可以帮忙吗?

您需要关闭nginx代理缓冲

location /delay {
         proxy_pass http://127.0.0.1:8080;
         proxy_buffering off;
}
然后重新加载配置文件

nginx -s reload

如果你认为这是问题所在,我建议你也发布你的NGINX配置。你玩过吗?谢谢!它解决了我的问题!谢谢这真的很有帮助!