美文网首页
springcloud中的超时设置

springcloud中的超时设置

作者: writeanewworld | 来源:发表于2019-09-30 14:42 被阅读0次
  1. 结构概览
超时配置.png

2.详情

 在分布式服务中,往往会存在这种一个父项目调用多个子节点的情况,而子节点又去调用别家 
 公司的接口。  
 这里就会存在三个设置超时时间的地方。
 (1)、父core调用子节点feign超时设置:(这里当父core调用一个节点超过80s就会报超时)

        feign.client.config.default.connect-timeout=80000
        feign.client.config.default.read-timeout=80000
        ribbon.ReadTimeout=80000
        ribbon.ConnectTimeout=80000

 (2)、子节点通过resttemplate访问服务接口超时设置:(这里采用的是在启动类中@Bean)

       //注入restTemplate
       @Bean
       public RestTemplate restTemplate(){
         SimpleClientHttpRequestFactory requestFactory = new 
                 SimpleClientHttpRequestFactory();
         requestFactory.setConnectTimeout(600000);
         requestFactory.setReadTimeout(600000);
         RestTemplate restTemplate=new RestTemplate(requestFactory);
         return  restTemplate;
       }

  (3)、服务接口设置的超时时间:
  
         需要提前沟通,比如别人服务设置的超时时间是2s,我们resttemplate设置的1s就报超时肯定是会出现问题的。

  总的来说,就是我的父项目要等待所有子节点的最大等待超时时间结束后超时。

相关文章

网友评论

      本文标题:springcloud中的超时设置

      本文链接:https://www.haomeiwen.com/subject/wbfmuctx.html