feign與hystrix超時配置

2021-10-05 13:34:53 字數 794 閱讀 5648

採用feign與hystrix同時啟用的情況下,超時時間一般要根據實際伺服器數量等因素重新配置過,其中ribbon的超時時間(feign一般用ribbon的超時)一般不能大於hystrix的超時時間,否則ribbon的重試還沒開始就直接觸發了hystrix熔斷。ribbon的重試可以避免網路抖動、伺服器處理超時帶來的客戶體驗不穩定,比如其中一台由於網路抖動不能訪問了,ribbon的重試可以訪問另外一台可用的。所以hystrix超時時間要大於feign時間,時間可以參考公式(1 + maxautoretries + maxautoretriesnextserver) * readtimeout

具體配置如下

##開啟斷路

##切換為okhttp

#feign連線超時時間

ribbon.connecttimeout=2000

#feign讀取超時時間

ribbon.readtimeout=5000

##請求進行重試

hystrix.command.default.execution.timeout.enabled=true

#目前有兩個容器例項,單個請求超時5s,+重試》10s,超15s則熔斷

hystrix.command.default.execution.isolation.thread.timeoutinmilliseconds=15000

關於Hystrix超時

對於web的請求有些時候可能會超過2s,這時候需要設定超市請求 hystrix的作用是對一段程式進行控制,這段程式做了什麼無所謂。程式請求服務的框架是feign,所以要對feign進行控制。0 openfeign的程式 feignclient value getname public inte ce...

feign結合hystrix實現熔斷 降級

feign中包含了hystrix以及ribbon,即feign在不匯入hystrix和ribbon的依賴下也能完成他們所能實現的功能,當然,如果想使用hystrix和ribbon自帶的註解以及配置,必須匯入依賴才可以。org.springframework.cloud spring cloud st...

配置超時時間 Hystrix 超時配置的N種玩法

至於以後你是用阿里的sentinel還是netflix hystrix我就不管了,但今天的主題還是netflix hystrix,至少目前還是有很多在使用的,所以今天這篇文章還是看看吧。如果我們使用的是 hystrixcommand註解,那麼可以在註解中直接指定超時時間,如下 hystrixcomm...