• <nav id="wkkge"><strong id="wkkge"></strong></nav>
  • <menu id="wkkge"></menu>
  • Dubbo教程
    Dubbo遠程調用
    Dubbo注冊中心
    Dubbo監控中心
    Dubbo負載均衡

    Dubbo負載均衡

     

     

    集群:集群是一種計算機系統,是一種服務器結構。把一組多個計算機,包括硬件和軟件組織在一個網絡中。相互連接起來共同完成某個工作。對用戶來說使用的是一個計算機, 集群對用戶是透明的。

     

    負載均衡:負載均衡是以集群為前提的。英文名稱為 Load Balance,其意思就是將負載(工作任務)進行平衡、分攤到多個操作單元上進行執行。

     

    對于網絡應用而言,并不是一開始就需要負載均衡,當網絡應用的訪問量不斷增長,單個處理單元無法滿足負載需求時,網絡應用流量將要出現瓶頸時,負載均衡才會起到作用。一般通過一個或者多個前端負載均衡器,將工作負載分發到后端的一組服務器上,從而達到整個系統的高性能和高可用性。

     

    負載均衡有兩方面的含義:首先,單個重負載的工作分配到多臺服務器做并行處理,每個服務器處理結束后,將結果匯總,返回給用戶,系統處理能力得到大幅度提高,這是集群(cluster)技術帶來的優勢。第二層含義是:大量的并發訪問或數據流量分擔到多臺服務器分別處理,減少用戶等待響應的時間。每個訪問分配給不同的服務器處理。

     

     

    Dubbo負載均衡

     

    負載策略

     

    Dubbo 提供了多種均衡策略,缺省為 random 隨機調用。

     

    A、Random LoadBalance隨機,按權重設置隨機概率。

     

    在一個截面上碰撞的概率高,但調用量越大分布越均勻,而且按概率使用權重后也比較均勻,有利于動態調整提供者權重。

     

    B、 RoundRobin LoadBalance輪循,按公約后的權重設置輪循比率。

     

    存在慢的提供者累積請求問題,比如:第二臺機器很慢,但沒掛,當請求調到第二臺時就卡在那,久而久之,所有請求都卡在調到第二臺上。

     

    C、 LeastActive LoadBalance最少活躍調用數,相同活躍數的隨機,活躍數指調用前后計數差。

     

    使慢的提供者收到更少請求,因為越慢的提供者的調用前后計數差會越大。

     

    D、ConsistentHash LoadBalance一致性 Hash,相同參數的請求總是發到同一提供者。

     

    當某一臺提供者掛時,原本發往該提供者的請求,基于虛擬節點,平攤到其它提供者, 不會引起劇烈變動。算法參見:http://en.wikipedia.org/wiki/Consistent_hashing。

     

    缺省只對第一個參數 Hash,如果要修改,請配置<dubbo:parameter key="hash.arguments"

     

    value="0,1" />

     

     

    配置方式

     

    <dubbo:service interface="..." loadbalance="roundrobin" /><dubbo:reference interface="..." loadbalance="roundrobin" />

     

    隨機:loadbalance=” random”

     

    輪詢:loadbalance=” roundrobin”

     

    最少活躍:loadbalance=” leastactive”

     

    一致性 Hash:loadbalance=” consistenthash”

     

    全部教程
  • <nav id="wkkge"><strong id="wkkge"></strong></nav>
  • <menu id="wkkge"></menu>
  • 面对面棋牌游戏