www涩-www黄网站-www黄色-www黄色com-国产免费拍拍视频在线观看网站-国产免费怕怕免费视频观看

一個巧妙的負載均衡算法 :翹動你的大腦

2018-01-12 16:14:07 博客園  點擊量: 評論 (0)
現在的負載均衡技術,可以說是滿大街都是,但是我們基本都停留在了使用的階段上,并沒有真正深入去了解其核心。如果真的出現了問題,可
    現在的負載均衡技術,可以說是滿大街都是,但是我們基本都停留在了使用的階段上,并沒有真正深入去了解其核心。如果真的出現了問題,可能就很難知道是什么原因導致了,只能去google,百度了。 因此,了解一些核心的東西,還是不錯的。

負載均衡大概流程就是,隨時收集各服務器信息或者各服務器主動上報信息,由配置主心進行保存,計算出權重,然后根據相應算法進行服務機器選擇。(當然了,這不是本文的重點,我也說得不一定對)

    我要展示的是,一個根據權重進行機器選擇的一個巧妙算法,如下:


  1. int chooseOneRoute ( LB_SvrInfo * & pSvr ) 
  2.     double dblTotalWeight = 0.0; 
  3.     int i = 0; 
  4.     time_t curTime = time(NULL); 
  5.     //權重的計算方法是Late方法 
  6.     if ( curTime - calWeightTime >= CAL_WEIGHT_TIME_INTERVAL ) 
  7.     { 
  8.         calculateWeight(); 
  9.     } 
  10.     //先把各服務器權重加起來 
  11.     for ( i = 0; i < MAX_SERVER_NUM; i++ ) 
  12.     { 
  13.         if ( !oServerInfo[i].isOkForRoute() ) continue
  14.         dblTotalWeight += oServerInfo[i].getWeight(); 
  15.     } 
  16.     dblTotalWeight *= rand() / ( RAND_MAX + 1.0 ); 
  17.     //做減法 
  18.     for ( i = 0; i < MAX_SERVER_NUM; i++ ) 
  19.     { 
  20.         if ( !oServerInfo[i].isOkForRoute() ) continue
  21.         dblTotalWeight -= oServerInfo[i].getWeight(); 
  22.     //找到對應服務器 
  23.         if ( dblTotalWeight < 0 ) break; 
  24.     } 
  25.     pSvr = &( oServerInfo[i] ); 
  26.     return 0; 

    分步解釋就是:

    先計算得到各機器的權重值,保存起來;

    按順序將各機器權重相加,相加之后就相當于各機器在總權重上占了各相應的一段比例;

    取隨機數,得到一個0~1的隨機值,并乘以總權重,作為選中機器的標志;

    再按順序減去各機器的權重,當減到選擇機器的權重范圍時,就得到了機器號,從而選定該機器。

    算法示意圖如下:

    服務器權重越高,在線段上占的長度越長,被隨機數選中的概率也越大。

    剛開始的時候,我以為是哪個數學家搞出來的公式得到的呢,結果原理卻出奇的簡單,所以好的東西不一定是復雜的,或者說看起來牛逼的東西,不一定就很復雜,但是肯定是大多數人意想不到的。

大云網官方微信售電那點事兒

責任編輯:售電衡衡

免責聲明:本文僅代表作者個人觀點,與本站無關。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。
我要收藏
個贊
?
主站蜘蛛池模板: 国产一级毛片网站 | 久久久精品国产免费观看同学 | 欧美国产日本精品一区二区三区 | 成人午夜视频免费观看 | 99久久精品一区二区三区 | 欧美69视频 | 欧美成人免费全网站大片 | 玖玖玖视频在线观看视频6 玖玖影院在线观看 | 欧美另类孕交免费观看 | 精品一区二区三区免费站 | 最新亚洲人成网站在线影院 | 国产欧美日韩在线 | 欧美日韩视频在线 | 99免费精品 | 国产美女操 | 久草在现视频 | 伊人色在线观看 | a级片观看 | 日韩在线视频一区二区三区 | 黄色毛片视频在线观看 | 国产视频高清在线观看 | 日本a级特黄三级三级三级 日本a一级片 | 亚洲精品区 | 国产精品久久毛片 | 国产人成午夜免费噼啪视频 | 成人欧美一区二区三区在线 | 免看一级一片一在线看 | 亚洲视频国产视频 | a一级爱做片免费 | 露脸国产野战最新在线视频 | 中文字幕亚洲一区二区v@在线 | 亚洲永久免费 | 九久久 | 一区二区三区不卡在线观看 | 在线观看国产欧美 | 亚洲免费视 | 国产成人99精品免费观看 | 97成人精品视频在线播放 | 免费一级欧美片片线观看 | 手机在线视频一区 | 国产精品久久久久激情影院 |