①random loadbalance 策略
默認狀況下,dubbo是random loadbalance 隨機調用實現負載均衡,能夠對provider不一樣實例設置不一樣的權重,會按照權重來進行負載均衡,權重越大分配的流量越高,通常就用這個默認的就能夠了。java
②roundrobin loadbalance策略
這個策略默認會將請求均勻的分佈到各個provider上面,可是若是各個機器的性能不同,很容易到杭州性能差 的機器負載太高。算法
③leastactive loadbalance策略
自動感知機器性能,若是某個機器性能差,那麼這個機器接收到的請求就會越少。接收到的請求越少,機器就越不活躍,那麼不活躍的機器就會接到更少的請求。負載均衡
④consistanthash loadbalance策略
一致性hash算法,相同參數的請求必定發送到同一個provider上面去,provider掛掉的時候,會基於虛擬節點均勻分配剩餘的請求,抖動不會太大。dom
①failover cluster策略
調用一個provider失敗,自動切換到其餘的provider上面去調用,默認策略,常見於讀操做。ide
②failfast cluster策略
一次調用provider失敗就當即失敗,常見於寫操做。性能
③failsafe cluster策略
出現異常時忽略掉,常見於不重要的接口調用,好比日誌記錄。代理
④faliback cluster策略
失敗後後臺自動記錄請求,而後定時重發,比較適合寫消息隊列這種操做。日誌
⑤forking cluster策略
並行調用多個provider,只要有一個成功就當即返回。接口
⑥broadcast cluster策略
逐個調用全部的provider。隊列
默認使用javassist動態字節碼生成,建立代理類。 能夠經過spi機制擴展配置本身的動態代理策略。