问题描述
我们发现从Artifactory下载大于1G的文件时,有时会在有时过早地终止该文件的下载,该文件前面带有Nginx反向代理。
使用curl进行下载时,可以使用-C -
标志恢复下载,以自动确定从中恢复下载的正确范围。
事实证明,当下载较大的文件时,默认的Nginx配置参数proxy_max_temp_file_size
导致争用情况,有时下载整个有效负载,有时则停止在1024m。
我想知道是否还有其他人看过这个并且对问题有更多的了解。我们可以通过增加proxy_max_temp_file_size
来“修复”它,但我仍然对了解为什么有时起作用感到drive。
解决方法
NGINX和Docker发生在我身上。请尝试添加以下内容,以消除可能导致它的缓冲:
proxy_buffering off;
proxy_ignore_headers "X-Accel-Buffering";
通常,此类问题的答案。它还可能会解释所提到的参数,因为缓冲区可能正在使用该最大大小(因此,有时当没有其他缓冲区被缓冲时,它可能会起作用)