dubbo服務叢集方式講解
叢集方式,可選:failover/failfast/failsafe/failback/forking
1.failover cluster
失敗自動切換,當出現失敗,重試其他伺服器(預設),通常用於讀操作,但重試會帶來更長的延時,可通過retries=“2”來設定重試次數(不含第一次)
<dubbo:service retries="2">
或者
<dubbo:reference retries="2">
或者
<dubbo:reference>
<dubbo:method name="findFoo" retries=2>
<dubbo:reference/>
2.failfast cluster
快速失效,只發起一次呼叫,失敗立即報錯。通常用於非冪等性寫操作,比如說新增記錄
<dubbo:service cluster="failfast">
或者
<dubbo:reference cluster="failfast"
3.failsaft cluster
失敗安全,出現異常時,直接忽略,通常用於寫入審計日誌等操作
<dubbo:service cluster="failsafe">
或者
<dubbo:reference cluster="failsafe">
4.failback cluster
失敗自動恢復,後臺記錄失敗請求,定時重發,通常用於訊息通知操作
<dubbo:service cluster="failback">
或者
<dubbo:reference cluster="failback">
5.forking cluster
並行呼叫多個伺服器,只要一個成功即返回。通常用於實時性要求較高的讀操作,但需要浪費更多的伺服器資源。可通過forks=“2”來設定最大並行數。
<dubbo:service cluster="forking">
或者
<dubbo:reference cluster="forking">