springboot 設置接口超時
1、配置文件 application.properties中加了,意思是設置超時時間為20000ms即20s,
spring.mvc.async.request-timeout=20000
2、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(); } }
3、RestTemplate超時
設置配置HttpComponentsClientHttpRequestFactory中的RequestConfig屬性
import lombok.extern.slf4j.Slf4j; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; import org.springframework.web.client.RestTemplate; @Slf4j @Configuration public class RestTemplateConfig { @Bean @ConfigurationProperties(prefix = "rest.connection") public HttpComponentsClientHttpRequestFactory httpRequestFactory() { return new HttpComponentsClientHttpRequestFactory(); } @Bean public RestTemplate customRestTemplate(){ return new RestTemplate(httpRequestFactory()); } }
也可以:
@Beanpublic SimpleClientHttpRequestFactory httpRequestFactory() { SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory(); requestFactory.setConnectTimeout(1000); requestFactory.setReadTimeout(1000); return requestFactory; } @Bean
public RestTemplate customRestTemplate(){ return new RestTemplate(httpRequestFactory()); }
application.properties:
#restTemplate配置
# 連接不共用的時候,等待連接超時。
rest.connection.connectionRequestTimeout=30000
# 建立連接超時
rest.connection.connectTimeout=30000
# 建立連接成功后 從服務器讀取超時
rest.connection.readTimeout=30000
或者
#restTemplate配置
rest.connection.connection-request-timeout=30000
rest.connection.connect-timeout=30000
rest.connection.read-timeout=30000
來源於:
https://blog.csdn.net/qq_35860138/article/details/88941558
https://blog.csdn.net/weixin_34114823/article/details/86015073