1. 程式人生 > >Nginx負載均衡4--動態負載演算法設計

Nginx負載均衡4--動態負載演算法設計

論文五:

[1]餘欽水,李星毅.一種基於預測的動態負載均衡演算法及實現[J].軟體導刊,2016,15(03):59-62.

        依據當前網際網路使用者訪問資料的特徵提出了負載預測模型,並提出了相應的後端例項調整策略。根據該策略指導系統對負載均衡器的後端例項數量進行調整,從而完成整個演算法流程。

統計某一網站連續幾天的PV變化

某一天某一時刻的PV  Pw(t)    w=(1,2...7)   t=(1,2....24)

某一天的PV   Pd

下一天的PV  Pd+1

 

Pw(t),w作為輸入,Pw+1(t)作為輸出,利用BP神經網路進行預測。

系統當前PV  p(t)  下一時段的預測PV  p`(t+1)  當前例項n   例項上限N   系統當前的平均cpu使用率c

  增加例項

n<N,   增加例項

  減少例項

  減少例項

作者的結果:

這種方式比較新穎,根據以往資料進行預測,提前調整後端伺服器叢集數量。

論文六

[1]李立耀,趙少卡,林東森,徐聰,楊家海.雲環境下虛擬機器集群系統動態負載均衡機制[J].計算機應用,2014,34(11):3082-3085+3090.

提出一種基於叢集的綜合負載計算模型,通過監測叢集 VM 節點的負載情況,並使用加權計算進行負載的綜合評價,之後根據評價情況實時地對使用者請求進行合理有效的分配,並彈性地對叢集中 VM 的數量進行增加或減少,最終實現整體叢集的動態負載均衡。

節點指標:

cpu利用率  記憶體利用率  當前節點連線數  響應時間
連線數以及響應時間的歸一化:

 

節點的綜合負載:

  指標的權值

權重調整策略:

動態負載均衡演算法流程:

作者的結果:

      

總結:

最近讀了一些有關Nginx動態負載均衡的論文,感謝大神做的工作。關於動態負載均衡,一般來說首先確定節點的衡量指標,然後計算各個節點的實時權重,根據某種特定的策略來實現動態調整;思路二是基於以往資料進行預測,提前進行叢集數量調整,提升系統性能。其中主要的指標一般選取cpu,記憶體,網路,IO,連線數以及響應時間等。