nginx 后面的 HTTP 流媒体服务器?

nginx 后面的 HTTP 流媒体服务器?

我正在尝试设置一个用 Tornado 和 Python 编写的 HTTP 流式传输服务器。基本上,它保持连接处于活动状态,并偶尔刷新信息。这有点像长轮询,只是服务器不会中断连接。

是否可以将类似的东西放在 nginx 后面?我正在从浏览器进行测试,在服务器断开连接之前我看不到任何输出,然后它会立即发送所有内容。

答案1

您需要关闭流式请求的 proxy_buffering。如果对后端的所有请求都是流式的,您只需使用代理缓冲。正如该条目所述,您还可以通过让后端包含 X-Accel-Buffering 标头来打开或关闭缓冲,从而根据每个请求管理缓冲。

答案2

只是猜测。tcp_nodelay 是否关闭?除非关闭,否则默认情况下处于打开状态。 Nginx 文档

相关内容