Spring 获取测试服务器中的错误504,但不是本地错误
我一直在努力解决Java Web项目中一个非常恼人的问题。我们使用Spring(3.1.4)和webflow(2.3.1),在Amazon服务器上运行Wildfly 11.0。简而言之,远程服务器对本地环境没有的任务给出504超时错误 一个特定的页面导出一个.xls报告,该报告在内部进行了大量的数据库和其他应用RESTAPI咨询工作。此功能位于ManagedBean中,如下所示:Spring 获取测试服务器中的错误504,但不是本地错误,spring,wildfly,http-status-code-504,Spring,Wildfly,Http Status Code 504,我一直在努力解决Java Web项目中一个非常恼人的问题。我们使用Spring(3.1.4)和webflow(2.3.1),在Amazon服务器上运行Wildfly 11.0。简而言之,远程服务器对本地环境没有的任务给出504超时错误 一个特定的页面导出一个.xls报告,该报告在内部进行了大量的数据库和其他应用RESTAPI咨询工作。此功能位于ManagedBean中,如下所示: @org.springframework.stereotype.Component @Scope(value = "
@org.springframework.stereotype.Component
@Scope(value = "request")
public class ReportMB {
...
public void export(){
try{
// code goes here
// generates HttpServletResponse containing the report file
} catch (...) {...}
}
即使我选择了太多要包含的数据,也会在我的开发机器中成功生成此报告,尽管完成此报告需要几分钟的时间。当它在远程服务器上运行时,使用相同的Wildfly版本和项目部署,我们在100秒内获得504超时,数据量少得多
我已经检查了日志,甚至调试了进程(本地),两个环境(本地和远程)都没有任何异常。您是否知道为什么本地服务器等待函数完成并准备好文件,而远程服务器没有,或者至少您知道如何增加此请求的Wildfly/Spring超时容差?(我见过许多更改部署超时的示例,但与请求超时无关)
提前感谢。504将由loadbalancer而不是应用服务器创建。增加loadbalancer上的超时时间huu,当然会,我会试试这个,然后带着反馈回来。谢谢完美无瑕,此配置立即生效。对于需要增加此超时值的用户,请查看。