首页 > 其他 > 详细

Ribbon的负载均衡策略

时间:2020-10-11 22:28:17      阅读:37      评论:0      收藏:0      [点我收藏+]

Ribbon的默认内置了7种负载均衡策略:

 

1、RoundRobinRule

  轮询策略,Rabbon默认采用的策略,若经过一轮轮询没有找到可用的provider(提供者),其最多轮询10轮,若最终

      没有找到,则返回NULL。

      举例:当前有3个提供者A,B,C,先挨个轮询1遍,A,B,C都不访问(1轮),在A,B,C访问一遍(2轮次),一共试10轮

                如果还不能访问,则返回NULL。

 

2、RandomRule

  随机策略,从所有可用的provider(提供者)中选择一个。

 

3、RetryRule

  重试策略,先按照RoundRobinRule策略获取provider(策略者)能获取到直接返回,若获取失败,则在指定的时限内重试,

       默认的时限为500毫秒。【RoundRobinRule轮询策略,默认是10轮,而RetryRule我给你500毫秒,你可以一直重试,直到找到为止】

 

4、BestAvailableRule

  最可用策略。选择并发量最小的provider(提供者), 即连接的消费者数量最少的provider 。

 

5、AvailabilityFilteringRule

  可用过滤算法。该算法规则是:过滤掉处于熔断状态的provider与已经超过连接极限的provider,对剩余provider采用轮询策略。

 

6、ZoneAvoidanceRule

  zone回避策略。根据provider所在zone及provider的可用性,对provider进行选择。

 

7、WeightedResponseTimeRule

  “权重响应时间”策略。根据每个provider的平均响应时间计算其权重,响应时间越快权重越大,被选中的机率就越高。

     在刚启动时采用轮询策略。后面就会根据权重进行选择了。

 

Ribbon的负载均衡策略

原文:https://www.cnblogs.com/codelives/p/13799501.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!