正好120秒后HTTP 504超时

Sto*_*dow 7 timeout http amazon-s3 amazon-ec2

我有一个在Amazon EC2云中运行的服务器应用程序.从我的客户端(浏览器),我发出一个HTTP请求,将一个文件上传到服务器,然后服务器处理该文件.如果存在大量处理(大文件),则服务器总是在120秒后完全超时504后端延续错误.虽然我收到此错误,但服务器继续处理请求并完成它(通过检查数据库进行验证)但由于超时,我无法在客户端上看到最终结果.

我无知为何发生这种情况.有没有人遇到过类似的504超时?是否有一些不在我控制范围内的中间代理服务器超时?

Jel*_*uns 7

我有类似的问题,在我的情况下,我认为这是由于Elastic Load Balancer(ELB)和EC2实例之间的连接.

对于长期解决方案,我将使用上面james.garriss建议的303状态响应+后端处理.

对于短期解决方案,亚马逊支持可能会增加ELB超时(请参阅https://forums.aws.amazon.com/thread.jspa?messageID=491594?中的响应).不幸的是,似乎没有办法通过API或控制台自行更改超时.

[ 更新 ] AWS现在允许您通过控制台,CLI或.ebextensions配置更新空闲超时.请参阅http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/config-idle-timeout.html(感谢@Daniel Patz的更新)

  • 现在看来您现在可以自己配置超时:http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/config-idle-timeout.html (3认同)

小智 0

脚本执行期间浏览器可能会超时。