概述
1 、什么是负载均衡策略
有多台服务器,访问每台服务器的次数是均衡的,不致某一台或几台服务器访问次数过多二负载过大挂掉
Dubbo 提供了如下 4 个负载均衡策略。
2、随机负载均衡策略
Dubbo 中的随机负载均衡策略的实现类是: RandomLoadBalance ,它分为 2 种情况。
被调用服务的所有实例都是同等权重的,则随机生成一个从 0 到 实例数量 - 1 的数,并返回对应的实例。
比如:总共有 3 个实例 invokers,3 个实例的权重都为 100,随机生成一个从 0 到 2 的数,假设生成 2,则返回 invokers[2],也就是返回了第 3 个实例。
被调用服务的所有实例的权重不一,则累计所有权重 totalWeight,随机生成一个从 0 到 totalWeight - 1 的数 offset,定位 offset 所在的位置,并返回对应位置的实例。
比如:下图有 5 个实例,每个实例的权重不一样,分别如表格所示,要选择实例的时候,随机生成一个从 0 到 649 的数,假设生成 251,则落在 250 - 349 的范围内,也就是选中 C 实例。
这 2 种情况有什么不同呢?
第一种情况就是纯随机的策略;第二种情况则在随机的基础上,加上了权重因素,权重越大,被选择的可能性就越大。
3. 随机策略的优缺点
优点:实现简单,水平扩展方便
缺点:当机器有异常的时候,不能根据机器的异常情况分配。
4、RandomLoadBalance 源码
原文链接:https://mp.weixin.qq.com/s/pmcRnyCehffMtw_D38E2ng
最后
以上就是甜美星月为你收集整理的Dubbo 的负载均衡策略 之 随机策略的全部内容,希望文章能够帮你解决Dubbo 的负载均衡策略 之 随机策略所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复