记一次反向代理下载异常的问题

最近接手了一个java项目
偶然一个时刻 后台的导出功能突然失效了

经过查看日志定位到异常
org.apache.catalina.connector.ClientAbortException: java.io.IOException: Connection reset by peer

同时排查出该功能在本地是正常的
于是联想到正式环境使用的是nginx的反向代理
检查nginx配置 发现确实没有配置proxy_buffering

然后在反向代理的配置项中 增加配置

 proxy_buffering off;

最后问题得到了解决

一般来说,下载功能不推荐直接输出流数据,一般采用生成文件后,上传到一个文件服务器,然后返回文件服务器地址提供给客户端进行下载,引以为戒!