负载均衡之最小活跃数算法

一、概念


  • 活跃数
    • 集群中各实例未处理的请求数。
  • 最小活跃数
    • 集群中各个实例,哪个实例未处理的请求数据最小,就称之为最小活跃数。

二、场景与设计思路


  • 场景
    • 以获取微服务地址为场景。
  • 设计思路
    • 初始化微服务地址,并初始化活跃数。
    • 获取字典或集合中活跃数最小的值,如果获取的值有多个,说明活跃数是相同,必须随机出一个地址后,活跃数并且加1。
    • 获取到地址后,必须将该地址的活跃数减1。

三、实现


  • 新建抽象类–AbstractLeastActive
     public abstract class AbstractLeastActive
      {
          #region  变量 
          /// <summary>
          /// 字典
          /// </summary>
          public ConcurrentDictionary<string, int> keyValuePairs = new ConcurrentDictionary<string, int>();
          /// <summary>
          /// 相同编号的数据集合 
          /// </summary>
          protected List<string> list = new List<string>();
          #endregion  
    
          #region 虚函数
          /// <summary>
     
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值