当前位置 : 主页 > 编程语言 > java >

SpringBoot设置接口超时时间的方法

来源:互联网 收集:自由互联 发布时间:2021-05-13
SpringBoot设置接口访问超时时间有两种方式 一、在配置文件application.properties中加了spring.mvc.async.request-timeout=20000,意思是设置超时时间为20000ms即20s, 二、还有一种就是在config配置类中加

SpringBoot设置接口访问超时时间有两种方式

一、在配置文件application.properties中加了spring.mvc.async.request-timeout=20000,意思是设置超时时间为20000ms即20s,

二、还有一种就是在config配置类中加入:

public class WebMvcConfig extends WebMvcConfigurerAdapter {
 @Override
  public void configureAsyncSupport(final AsyncSupportConfigurer configurer) {
    configurer.setDefaultTimeout(20000);
    configurer.registerCallableInterceptors(timeoutInterceptor());
  }
 @Bean
 public TimeoutCallableProcessingInterceptor timeoutInterceptor() {
   return new TimeoutCallableProcessingInterceptor();
 }
}

PS:SpringBoot Rest Api 设置超时时间

项目有一对外开放api,外网访问经常出现超时,刚接触spring boot不久,内置的tomcat不像原先那样在server.xml中设置request超时时间。

后来查了些资料,在配置文件application.properties中加了spring.mvc.async.request-timeout=20000,意思是设置超时时间为20000ms即20s,超时问题的确不怎么发生了。

还有另外一种设置方式,如下:

public class WebMvcConfig extends WebMvcConfigurerAdapter {
 @Override
  public void configureAsyncSupport(final AsyncSupportConfigurer configurer) {
    configurer.setDefaultTimeout(20000);
    configurer.registerCallableInterceptors(timeoutInterceptor());
  }
 @Bean
 public TimeoutCallableProcessingInterceptor timeoutInterceptor() {
   return new TimeoutCallableProcessingInterceptor();
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

网友评论