亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

round robin權(quán)重輪循算法php實(shí)現(xiàn)代碼

 更新時(shí)間:2016年05月28日 20:37:44   投稿:mdxy-dxy  
這篇文章主要介紹了round robin權(quán)重輪循算法php實(shí)現(xiàn)代碼,需要的朋友可以參考下

先上代碼,采用php腳本語言

<?php

/* 
 * Copyright (C) FatHong
 */

/* 數(shù)據(jù)初始化,weight: 權(quán)重 */
$hosts['a'] = array('weight' => 5, 'current_weight' => 0, 'count' => 0);
$hosts['b'] = array('weight' => 3, 'current_weight' => 0, 'count' => 0);
$hosts['c'] = array('weight' => 2, 'current_weight' => 0, 'count' => 0);

$result = array();

/* 模擬10次 */
for ($i = 0; $i < 10; $i++) {
  round_robin($hosts, $result);
}

/* 輸出結(jié)果 */
print_r($result);

/* round robin 輪循 */
function round_robin(&$hosts, &$result)
{
  $total = 0;
  $best = null;

  foreach ($hosts as $key => $item) {
    $current = &$hosts[$key];
    $weight = $current['weight'];

    $current['current_weight'] += $weight;
    $total += $weight;

    if ( ($best == null) || ($hosts[$best]['current_weight'] < 
                $current['current_weight']) ) 
    {
      $best = $key;
    }
  }

  $hosts[$best]['current_weight'] -= $total;
  $hosts[$best]['count']++;

  $result[] = $best;
}

輸出結(jié)果:

Array
(
[0] => a
[1] => b
[2] => c
[3] => a
[4] => a
[5] => b
[6] => a
[7] => c
[8] => b
[9] => a
)

負(fù)載均衡的服務(wù)器中,其實(shí)現(xiàn)算法有種是round-robin權(quán)重輪循,就是后端的服務(wù)器列表中,給每個(gè)服務(wù)器標(biāo)上權(quán)重,代表它被采用的機(jī)率。

這段代碼把最簡(jiǎn)潔的流程剝離出來,沒考慮后端掛起等情況,可以知道它是怎么實(shí)現(xiàn)的,僅供參考.

相關(guān)文章

  • curl和libcurl的區(qū)別簡(jiǎn)介

    curl和libcurl的區(qū)別簡(jiǎn)介

    這篇文章主要介紹了curl和libcurl的區(qū)別簡(jiǎn)介,本文講解了curl簡(jiǎn)介、libcurl簡(jiǎn)介、curl與libcurl對(duì)比、“curl”的不同意思、PHP中使用curl和libcurl等內(nèi)容,這么多的curl,搞都搞不懂,看了本文才知道,我們一直用的其實(shí)是libcurl,需要的朋友可以參考下
    2015-07-07
  • PHP基于方差和標(biāo)準(zhǔn)差計(jì)算學(xué)生成績(jī)的穩(wěn)定性示例

    PHP基于方差和標(biāo)準(zhǔn)差計(jì)算學(xué)生成績(jī)的穩(wěn)定性示例

    這篇文章主要介紹了PHP基于方差和標(biāo)準(zhǔn)差計(jì)算學(xué)生成績(jī)的穩(wěn)定性操作,涉及PHP數(shù)學(xué)運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下
    2017-07-07
  • Ajax實(shí)現(xiàn)對(duì)靜態(tài)頁面的文章訪問統(tǒng)計(jì)功能示例

    Ajax實(shí)現(xiàn)對(duì)靜態(tài)頁面的文章訪問統(tǒng)計(jì)功能示例

    這篇文章主要介紹了Ajax實(shí)現(xiàn)對(duì)靜態(tài)頁面的文章訪問統(tǒng)計(jì)功能,結(jié)合簡(jiǎn)單實(shí)例形式分析了靜態(tài)頁面實(shí)現(xiàn)訪問統(tǒng)計(jì)功能的計(jì)數(shù)操作相關(guān)技巧,需要的朋友可以參考下
    2016-10-10
  • ThinkPHP安裝和設(shè)置

    ThinkPHP安裝和設(shè)置

    本文是ThinkPHP的系列教程的第一篇,本系列一共七篇,我們將從簡(jiǎn)到難,由淺入深,給大家詳細(xì)介紹這款優(yōu)秀的國(guó)產(chǎn)開源php框架,有需要的小伙伴可以關(guān)注下。
    2015-07-07
  • php 上一篇,下一篇文章實(shí)現(xiàn)代碼與原理說明

    php 上一篇,下一篇文章實(shí)現(xiàn)代碼與原理說明

    就是對(duì)id對(duì)進(jìn)行order by id desc 或 order by id asc進(jìn)行排序,然后再判斷比當(dāng)前id> or小于當(dāng)前文章id的相同欄目的文章。
    2010-05-05
  • php訪問數(shù)組最后一個(gè)元素的函數(shù)end()用法

    php訪問數(shù)組最后一個(gè)元素的函數(shù)end()用法

    這篇文章主要介紹了php訪問數(shù)組最后一個(gè)元素的函數(shù)end()用法,實(shí)例分析了php中end函數(shù)訪問數(shù)組元素的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-03-03
  • php驗(yàn)證碼的制作思路和實(shí)現(xiàn)方法

    php驗(yàn)證碼的制作思路和實(shí)現(xiàn)方法

    這篇文章主要介紹了php驗(yàn)證碼的制作思路和實(shí)現(xiàn)方法,我們不能盲目的去實(shí)現(xiàn)php生成驗(yàn)證碼,更應(yīng)該了解php驗(yàn)證碼的基本原理,真正的掌握php驗(yàn)證碼的實(shí)現(xiàn)方法,需要的朋友可以參考下
    2015-11-11
  • PHP實(shí)現(xiàn)的mysql讀寫分離操作示例

    PHP實(shí)現(xiàn)的mysql讀寫分離操作示例

    這篇文章主要介紹了PHP實(shí)現(xiàn)的mysql讀寫分離操作,簡(jiǎn)單講述了mysql讀寫分離的原理,并結(jié)合實(shí)例形式給出了php針對(duì)mysql的讀寫sql語句操作不同數(shù)據(jù)庫的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2018-05-05
  • PHP與Java對(duì)比學(xué)習(xí)日期時(shí)間函數(shù)

    PHP與Java對(duì)比學(xué)習(xí)日期時(shí)間函數(shù)

    本文給大家介紹的是從Java和PHP進(jìn)行對(duì)比復(fù)習(xí)了下日期時(shí)間的處理函數(shù),并給出了一些示例,希望對(duì)大家能夠有所幫助
    2016-07-07
  • php miniBB中文亂碼問題解決方法

    php miniBB中文亂碼問題解決方法

    miniBB因?yàn)楹?jiǎn)約而美麗,但國(guó)內(nèi)使用人數(shù)極少, 好多人都是因?yàn)橹形膩y碼而放棄
    2008-11-11

最新評(píng)論