摘自部落格:
dubbo提供了多種容錯方案,預設模式為failover,也就是失敗重試。
1、failover cluster:失敗重試
當服務消費方呼叫服務提供者失敗後自動切換到其他服務提供者伺服器進行重試。這通常用於讀操作或者具有冪等的寫操作,需要注意的是重試會帶來更長延遲。可通過 retries="2" 來設定重試次數(不含第一次)。
介面級別配置重試次數方法 ,如上配置當服務消費方呼叫服務失敗後,會再重試兩次,也就是說最多會做三次呼叫,這裡的配置對該介面的所有方法生效。當然你也可以針對某個方法配置重試次數如下:
2、failfast cluster:快速失敗
當服務消費方呼叫服務提供者失敗後,立即報錯,也就是只呼叫一次。通常這種模式用於非冪等性的寫操作。
3、failsafe cluster:失敗安全
當服務消費者呼叫服務出現異常時,直接忽略異常。這種模式通常用於寫入審計日誌等操作。
4、failback cluster:失敗自動恢復
當服務消費端用服務出現異常後,在後台記錄失敗的請求,並按照一定的策略後期再進行重試。這種模式通常用於訊息通知操作。
5、forking cluster:並行呼叫
當消費方呼叫乙個介面方法後,dubbo client會並行呼叫多個服務提供者的服務,只要乙個成功即返回。這種模式通常用於實時性要求較高的讀操作,但需要浪費更多服務資源。可通過 forks="2" 來設定最大並行數。
6、broadcast cluster:廣播呼叫
當消費者呼叫乙個介面方法後,dubbo client會逐個呼叫所有服務提供者,任意一台呼叫異常則這次呼叫就標誌失敗。這種模式通常用於通知所有提供者更新快取或日誌等本地資源資訊。
如上,dubbo本身提供了豐富的集群容錯模式,但是如果您有定製化需求,可以根據dubbo提供的擴充套件介面cluster進行定製。在後面的消費方啟動流程章節會講解何時/如何使用的集群容錯。
dubbo容錯機制
dubbo容錯策略 failover cluster 模式 1.失敗自動切換,當出現失敗,重試其它伺服器。預設 2.通常用於讀操作,但重試會帶來更長延遲。3.可通過retries 2 來設定重試次數 不含第一次 failfast cluster 快速失敗,只發起一次呼叫,失敗立即報錯。通常用於非冪等...
Dubbo容錯機制
一 容錯機制 1 failover cluster 預設 失敗自動切換,當出現失敗,重試其它伺服器。通常用於讀操作,但重試會帶來更長延遲。2 failfast cluster 快速失敗,只發起一次呼叫,失敗立即報錯。通常用於非冪等性的寫操作,比如新增記錄。3 failsafe cluster 失敗安...
Dubbo 常用的容錯機制
常見容錯機制 failover failsafe,failfase failback,forking,於阿里的定義。failover 失敗自動切換 當出現失敗,重試其它伺服器,通常用於讀操作 推薦使用 重試會帶來更長延遲。failfast 快速失敗 只發起一次呼叫,失敗立即報錯,通常用於非冪等性的寫...