我正在使用一个使用弹簧靴的嵌入式码头容器。如果我的请求花了太长时间,Jetty就失败了。在码头日志中,我看到了这一点:
异步超时后发送
所以,我认为异步超时了。但是,我找不到将此超时更新到更高值的位置。
有什么想法吗?
答案 0 :(得分:3)
Spring mvc支持应用程序属性spring.mvc.async.request-timeout,它是异步请求处理的超时(以毫秒为单位)。 用spring-webmvc-4.3.2.RELEASE
验证答案 1 :(得分:2)
您可以在应用程序上下文中添加JettyServerCustomizer
来自定义Jetty:
@Bean
JettyServerCustomizer jettyCustomizer() {
return new JettyServerCustomizer() {
@Override
public void customize(Server server) {
//do something
}
};
}
但我认为您正在寻找的配置是AsyncContext
级别,并且由Spring MVC处理。试试这个配置:
@Configuration
public static class MvcConfig extends WebMvcConfigurerAdapter {
@Override
public void configureAsyncSupport(AsyncSupportConfigurer configurer) {
configurer.setDefaultTimeout(60000);
}
}