zoukankan      html  css  js  c++  java
  • Spring could使用FeignClient超时问题

    在使用Spring Cloud时经常出见如下异常:

    feign.RetryableException: Read timed out executing GET XXX
        at feign.FeignException.errorExecuting(FeignException.java:84)
        at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:113)
        at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:78)
        at feign.hystrix.HystrixInvocationHandler$1.run(HystrixInvocationHandler.java:106)
        at com.netflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:302)
        at com.netflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:298)
        at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:46)
        at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:35)
        at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48)
        at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
        at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48)
        at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
        at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48)
        at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
        ......
    Caused by: java.net.SocketTimeoutException: Read timed out
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
        at java.net.SocketInputStream.read(SocketInputStream.java:171)
        at java.net.SocketInputStream.read(SocketInputStream.java:141)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:735)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
        at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
        at feign.Client$Default.convertResponse(Client.java:143)
        at feign.Client$Default.execute(Client.java:68)
        ......

    解决办法是配置文件中添加如下配置项:

    feign:
      client:
        config:
          default:
            connect-timeout: 10000
            read-timeout: 10000
  • 相关阅读:
    红黑树在不同场景的应用及其优势
    微信抢红包简单实现(随机分配金额、并发控制)
    日志采集常见组件优劣势
    LayUIAdminPro使用
    DevExpress中Text和EditValue封装数据示例
    NPOI读取Excel日期类型单元格返回一串数字问题(2020-08-15 变成 12-5月-2020了)
    Win 10 64位 注册 Grid++ Report 控件
    C# EF 读取App.config连接字符串
    EF 用到的两个类
    Jason实现DataTable和List互转
  • 原文地址:https://www.cnblogs.com/bobshieh/p/11356756.html
Copyright © 2011-2022 走看看