zoukankan      html  css  js  c++  java
  • Dubbo负载均衡策略

    在集群负载均衡时,Dubbo提供了多种均衡策略,缺省为random随机调用。

    可以自行扩展负载均衡策略,参见:负载均衡扩展

    Random LoadBalance

    • 随机,按权重设置随机概率。
    • 在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于动态调整提供者权重。

    权重加倍

     RoundRobin LoadBalance

    • 轮循,按公约后的权重设置轮循比率。
    • 存在慢的提供者累积请求问题,比如:第二台机器很慢,但没挂,当请求调到第二台时就卡在那,久而久之,所有请求都卡在调到第二台上。

    解决办法 :结合权重,把第二台机(性能低的)的权重设置低一点

    LeastActive LoadBalance
    • 最少活跃调用数,相同活跃数的随机,活跃数指调用前后计数差。
    • 使慢的提供者收到更少请求,因为越慢的提供者的调用前后计数差会越大。

    ConsistentHash LoadBalance

    • 一致性Hash,相同参数的请求总是发到同一提供者。
    • 当某一台提供者挂时,原本发往该提供者的请求,基于虚拟节点,平摊到其它提供者,不会引起剧烈变动。
    • 算法参见:http://en.wikipedia.org/wiki/Consistent_hashing。
    • 缺省只对第一个参数Hash,如果要修改,请配置<dubbo:parameter key="hash.arguments" value="0,1" />
    • 缺省用160份虚拟节点,如果要修改,请配置<dubbo:parameter key="hash.nodes" value="320" />

    Dubbo管理台配置负载均衡

    权重调节

    配置如:

    <dubbo:serviceinterface="..."loadbalance="roundrobin"/>

    或:

    <dubbo:referenceinterface="..."loadbalance="roundrobin"/>

    或:

    <dubbo:serviceinterface="...">

        <dubbo:methodname="..."loadbalance="roundrobin"/>

    </dubbo:service>

    一般在实际项目我们配置权重或负载均衡时不在代码中写死,我们动态使用默认配置,需要调节时通过dubbo管控台上进行配置

    或:

    <dubbo:referenceinterface="...">

        <dubbo:methodname="..."loadbalance="roundrobin"/>

    </dubbo:reference>

  • 相关阅读:
    Key-Value Memory Network
    Deep Mask Memory Network with Semantic Dependency and Context Moment for Aspect Level Sentiment Clas
    Deep Memory Network在Aspect Based Sentiment方向上的应用
    Deep Memory Network 深度记忆网络
    Self Attention 自注意力机制
    Attention基本公式及其变种
    *端策略优化算法(PPO)
    Policy Gradient 算法
    一本通 农场派对
    A
  • 原文地址:https://www.cnblogs.com/linjiaxin/p/6821540.html
Copyright © 2011-2022 走看看