环境:
Spring Boot :2.0.8.RELEASE
Spring Cloud : Finchley.SR2
Nacos : 0.8.0
接上一篇,通过追踪请求,最终会调用SimpleClientHttpRequestFactory的openConnection,与prepareConnection。具体代码在InterceptingClientHttpRequest:
第一个红框即调用SimpleClientHttpRequestFactory创建ClientHttpRequest,
prepareConnection接口如下
connectTimeout与readTimeout默认情况下都是-1,即不会timeout。到这里请求已经分析完,即可通过自定义ClientHttpRequestFactory来实现超时时间的设置。
修改consume工程如下:
@SpringBootApplication
@Slf4j
@EnableDiscoveryClient
@RestController
public class ConsumeApplication {
@Bean
@LoadBalanced
public RestTemplate getRestTemplate(){
SimpleClientHttpRequestFactory