當前位置:編程學習大全網 - 網站源碼 - zuul網關重試機制探索

zuul網關重試機制探索

1.zuul相關的默認配置 springcloud(F版)

有些書上說,配置當中的ConnectTimeout和ReadTimeout是當HTTP客戶使用HttpClient的時候生效的,參數會被設置到HttpClient中,但我在使用過程中,並不是只有HttpClient才會生效。

默認情況下ribbon超時時間為1秒,我們模擬壹個2秒的業務讓ribbon超時。

當MaxAutoRetries大於0時,調用也沒有發生變化。

至此說明實驗壹中重試未起作用。

突然有壹個想法,網關重試機制會不會和ribbon底層使用的http有關呢,默認情況下ribbon使用的是httpclient,那麽我如果換成使用okhttp呢,於是,我把ribbon底層換成了okhttp又重復了壹遍實驗壹

ribbon.MaxAutoRetries: 1

通過打印異常堆棧,可以發現其中的端倪

異常已經清晰的告訴我們了原因:

Number of retries on next server exceeded max 1 retries ,就是重試機器的次數已經答到了設置的上限,因為我們MaxAutoRetriesNextServer設置的是1,意思就是我們重試壹臺。因此我們吧

ribbon.MaxAutoRetries: 2

zuul使用httpClient並支持重試

zuul網關重試就先寫到這,主要是記錄了壹下我自己的使用當中遇到的情況。歡迎拍磚。

  • 上一篇:在美國讀完llm後會在知乎做什麽?
  • 下一篇:夢幻西遊129法系18門需要多少速度
  • copyright 2024編程學習大全網