您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Spring Cloud Zuul如何實現重試配置”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Spring Cloud Zuul如何實現重試配置”這篇文章吧。
Spring Cloud Zuul模塊本身就包含了對于hystrix和ribbon的依賴,當我們使用zuul通過path和serviceId的組合來配置路由的時候,可以通過hystrix和ribbon的配置調整路由請求的各種時間超時機制。
1 ribbon配置舉例
配置連接超時時間1秒,請求處理時間2秒,統一服務server嘗試重連1次,切換server重連1次
ribbon: ConnectTimeout: 1000 ReadTimeout: 2000 MaxAutoRetries: 1 MaxAutoRetriesNextServer: 1
2 hystirx配置舉例
hystrix: command: default: execution: isolation: thread: timeoutInMilliseconds: 60000
這里需要注意的是hystrix的配置時間應該大于ribbon全部重試時間的總和,上面我配置的是2次重試,包括首次請求,三次時間是6秒
引用官方大神的一段說明
When using Hystrix commands that wrap Ribbon clients you want to make sure your Hystrix timeout is configured to be longer than the configured Ribbon timeout, including any potential
retries that might be made. For example, if your Ribbon connection timeout is one second and
the Ribbon client might retry the request three times, than your Hystrix timeout should
be slightly more than three seconds.
3 打開zuul的重試配置:
zuul: retryable: true
特別注意zuul的重試配置需要依賴spring的retry,不然的話怎么配置都是徒勞
<dependency> <groupId>org.springframework.retry</groupId> <artifactId>spring-retry</artifactId> </dependency>
以上是“Spring Cloud Zuul如何實現重試配置”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。