Springboot2.0设定restTemplate超时(最新的方法)
发布日期:2021-05-06 19:51:47 浏览次数:23 分类:技术文章

本文共 909 字,大约阅读时间需要 3 分钟。

背景

  • setConnectTimeout 设定连接超时。从你发起建立连接请求到连接建立前的时间。
  • setReadTimeout 设定读取超时。连接建立后,发起request到收到response的时间。这个要慎重,如果你设置了超时,上游最后又把数据response给你了,可能出现你和上游的数据不一致。

restTemplateBuilder方式已经被废弃

restTemplateBuilder的方式被废弃,就推荐使用。

@Configurationpublic class AppConfig{    @Bean    public RestTemplate restTemplate(RestTemplateBuilder restTemplateBuilder)     {        return restTemplateBuilder           .setConnectTimeout(...)           .setReadTimeout(...)           .build();    }}

2.0之后的方法,可以通过SimpleClientHttpRequestFactory来设置超时。配置文件的方法多了个传参的过程。

@Configurationpublic class AppConfig{    @Bean    public RestTemplate restTemplate()    {        SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();        requestFactory.setConnectTimeout(5000);        requestFactory.setReadTimeout(3000);        RestTemplate restTemplate = new RestTemplate(requestFactory);        return restTemplate;    }}
上一篇:怎么查看tomcat服务器是否是长连接?
下一篇:HTTP协议(1)_入门的一些教程和资源

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年04月07日 19时50分38秒