dubbo的重試機制
阿新 • • 發佈:2018-12-18
對dubbo熟悉的人對下面的配置一定不會陌生:
<dubbo:reference id="xxxx" interface="xx" check="true" async="false" retries="1" timeout="2000"/>
上面設定需要關注的幾個地方:
1.check=true--系統在啟動時就會去檢查對應的dubbo服務,不存在就報錯導致啟動失敗,所以如果設定為true,就必須確保該服務提供者一定要在該應用啟動之前啟動,否則就會啟動失敗
2.async--false,表明該服務是同步呼叫而不是非同步呼叫
3.retries="1" 重試一次,也就是最多嘗試2次,如果失敗就丟擲異常
4.timeout="2000" 服務超時時間(單位為毫秒),客戶端在呼叫該dubbo服務時會啟動超時檢測,如果達到2秒就會報超時異常,超時異常後客戶端會嘗試1次呼叫,不管失敗與否都返回。
注:需要注意的地方是timeout只有在超時異常才有效,如果是其他異常導致dubbo服務呼叫拋異常,會立即進入下一次嘗試
---------------------
作者:johnHuster
來源:CSDN
原文:https://blog.csdn.net/john1337/article/details/77977349
版權宣告:本文為博主原創文章,轉載請附上博文連結!