微服務調用時的超時異常,使用feign的時候負載均衡策略的調整
阿新 • • 發佈:2018-11-02
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的時候負載均衡策略的調整