1. 程式人生 > >微服務調用時的超時異常,使用feign的時候負載均衡策略的調整

微服務調用時的超時異常,使用feign的時候負載均衡策略的調整

sna cat http adb png balance 文件 style 成了

1.超時:比如訂單服務調order-service用商品服務product-service的接口:

此接口需要一定的響應時間,調用它的時候會遇到此異常

技術分享圖片

解決辦法,在order-service配置文件application.yml裏設置超時時間:

超時配置:
默認optons readtimeout是60,但是由於hystrix默認是1秒超時,所以響應超過1秒則為超時

server:
  port: 8781


#指定註冊中心地址
eureka:
  client:
    serviceUrl:
      defaultZone: http:
//localhost:8761/eureka/ #服務的名稱 spring: application: name: order-service #自定義負載均衡策略 product-service: ribbon: NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule #修改調用超時時間2s feign: client: config: default: connectTimeout: 2000 readTimeout:
2000

2.使用feign的時候負載均衡策略的調整

  ribbon和feign兩個的區別和選擇
開發的時候選擇feign
1.默認集成了ribbon
2.起來更加思路清晰和方便
3.采用註解方式進行配置,配置熔斷等方式方便

所以:

  feign配置負載均衡和ribbon一樣,不配置默認輪詢,

  配置了ribbon就是配置feign,如上面文件的配置

微服務調用時的超時異常,使用feign的時候負載均衡策略的調整