当前位置: 首页 > news >正文

深圳外包网站潍坊建设网站公司电话

深圳外包网站,潍坊建设网站公司电话,住房和城乡建设部令第51号,wordpress拉黑用户登录文章目录[toc]一、概念二、场景与设计思路三、实现四、代码下载一、概念 活跃数 集群中各实例未处理的请求数。 最小活跃数 集群中各个实例,哪个实例未处理的请求数据最小,就称之为最小活跃数。 二、场景与设计思路 场景 以获取微服务地址为场景。 设计…

文章目录

    • @[toc]
      • 一、概念
      • 二、场景与设计思路
      • 三、实现
      • 四、代码下载

一、概念


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

二、场景与设计思路


  • 场景
    • 以获取微服务地址为场景。
  • 设计思路
    • 初始化微服务地址,并初始化活跃数。
    • 获取字典或集合中活跃数最小的值,如果获取的值有多个,说明活跃数是相同,必须随机出一个地址后,活跃数并且加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>/// 筛选最小编号的数据/// </summary>protected void FilterMinValue(){int number = int.MaxValue;foreach (var item in keyValuePairs){if (number >= item.Value){if (number == item.Value){number = item.Value;list.Add(item.Key);continue;}list.Clear();number = item.Value;list.Add(item.Key);}}}/// <summary>/// 随机集合中的数据/// </summary>protected string RandomValue(){Random random = new Random();var num = random.Next(list.Count);return list[num];}/// <summary>/// 活跃数加1/// </summary>/// <param name="key">key值</param>protected void AddActive(string key) {keyValuePairs.TryUpdate(key, keyValuePairs[key]+1, keyValuePairs[key]);}#endregion/// <summary>/// 释放编号/// </summary>/// <param name="key"></param>public abstract void Dispose(string key);/// <summary>/// 获取最小活跃数/// </summary>/// <returns></returns>public abstract string GetValue();
    
  • 新建实现类–LeastActive
      public class LeastActive : AbstractLeastActive{/// <summary>/// 获取最小活跃数据/// </summary>/// <returns></returns>public override string GetValue(){string value = "";//筛选数据this.FilterMinValue();if (this.list.Count == 1){value = this.list[0];//活跃数加1this.AddActive(value);return value;}else if (this.list.Count > 1) {value = this.RandomValue();//活跃数加1this.AddActive(value);return value;}return value;}/// <summary>/// 最小活跃数据释放 /// </summary>/// <param name="key"></param>public override void Dispose(string key){keyValuePairs.TryUpdate(key, keyValuePairs[key] - 1, keyValuePairs[key]);}}
    
  • 新建单元测试
          private AbstractLeastActive abstractLeastActive = new LeastActive();[Fact]public void Test1(){abstractLeastActive.keyValuePairs.TryAdd("http://localhost:8080", 0); abstractLeastActive.keyValuePairs.TryAdd("http://localhost:8082", 1);abstractLeastActive.keyValuePairs.TryAdd("http://localhost:8081", -1);abstractLeastActive.keyValuePairs.TryAdd("http://localhost:8083", -1);string value = abstractLeastActive.GetValue();abstractLeastActive.Dispose(value);Assert.Equal("http://localhost:8083", value);}
    

四、代码下载

CSDN:https://download.csdn.net/download/Fu_Shi_rong/87435602
Git:https://gitee.com/Fu_Shi_rong/gcnf.algorithm

http://www.yayakq.cn/news/544245/

相关文章:

  • 网站收录不好排名高怎么建设一个自己的电商网站
  • 网站制作软件dw的全称邢台网站优化建设
  • 网站建设维护协议软件下载站网站源码免费
  • 顺德建设行政主管部门网站小俊哥网站建设
  • 中文域名解析网站wordpress为静态页面
  • 网站建设工程设计图深圳网页设计兴田德润放心
  • 淘宝网站的建设内容正规网站有哪些
  • 建筑公司网站作用湖北省建设安全管理协会网站
  • 佛山专业做网站公司有哪些wordpress浏览图片失败
  • 网站空间流量wordpress 手机端打开速度慢
  • 梧州网页设计师招聘怎么优化网站关键词排名
  • 万维网包括哪些网站网站 蓝色
  • 上海市住房和城乡建设管理局网站做外贸没有网站可以吗
  • 怀化市网站建设怎么做可以访问网站连接加密
  • 绍兴网站建设网站有哪些企业公司
  • 电子商务网站建设实验心得排名seo软件
  • 二手车网站模版网站集约化建设进度报告
  • 上海营销型网站建站网站后台开发步骤
  • 有阿里空间怎么做网站帮人做网站的推广
  • 网站模板怎么做的网站建设与策划试卷
  • 无锡网站建设原则名片设计模板
  • wordpress会员制网站win10搭建wordpress
  • 网站建设开发设计营销公司山东wordpress侧边栏
  • 一个空间怎么做两个网站中煤第一建设公司网站
  • 做的好的响应式网站有哪些手机网址导航主页哪个好
  • 东莞手机网站价格便宜昆明百度推广开户
  • 购物商场网站开发过程详细说明怎么样制作自己的网站
  • 送给做网站的锦旗语用wordpress写公司官网
  • 公司开发设计推荐上海seo顾问推推蛙
  • 沧州建设厅官方网站郑州专业网站建设搭建公司