面向云服務的分布式消息系統(tǒng)負載均衡策略
發(fā)布時間:2024-03-16 01:23
針對云服務下分布式消息系統(tǒng)存在的節(jié)點間負載傾斜問題,提出基于副本角色的動態(tài)負載均衡策略,并將算法應用于Apache Kafka分布式流平臺中;谙⑾到y(tǒng)的主要功能為讀寫及存儲消息,算法以CPU、磁盤、網(wǎng)絡讀寫流量為節(jié)點的主要負載因素,并根據(jù)不同的負載類型提出相應的首領角色遷移策略和副本遷移策略。從時間代價、空間代價、服務可用性等多個角度論證該算法的可行性,并討論算法中涉及參數(shù)對算法執(zhí)行效果的影響。經(jīng)實驗驗證,所提算法能夠實現(xiàn)集群中各節(jié)點的資源使用量均不大于規(guī)定閾值,并且與缺省系統(tǒng)相比,集群CPU占用率均方差下降72.1%,磁盤占用率均方差下降86.1%,網(wǎng)絡流入速度均方差下降79.2%,網(wǎng)絡流出速度均方差下降63.9%,優(yōu)化效果顯著。
【文章頁數(shù)】:7 頁
【部分圖文】:
本文編號:3928903
【文章頁數(shù)】:7 頁
【部分圖文】:
圖1Kafka的架構
如圖1所示,Kafka的架構主要由4部分組成:生產(chǎn)者、代理(Broker)、消費者,以及通過Zookeeper[16]集群來維護部分元數(shù)據(jù)信息。生產(chǎn)者主動(push)發(fā)布消息到代理節(jié)點,消費者主動從代理節(jié)點中拉取(pull)消息進行消費。每一條消息都會屬于一個主題,一個主題實際就....
圖2Kafka的多副本機制
圖1Kafka的架構Kafka原生的負載均衡策略使用靜態(tài)的輪詢(Round-Robin)算法,即輪詢所有分區(qū),將每個分區(qū)的所有副本分配在不同的代理節(jié)點上。設代理節(jié)點總數(shù)為N,具體算法如下:
圖3負載均衡算法流程圖
負載均衡算法的流程圖如圖3所示。一個集群能夠被判定為負載均衡,應同時滿足以下兩個目標。
圖4原策略下各代理節(jié)點的負載情況
如圖3(a)所示,原系統(tǒng)使用的分區(qū)輪詢策略對磁盤占用率不均衡的問題的影響較為明顯。其中,Broker1的磁盤負載最高,P1-P10時刻Broker1的磁盤占用率均大于70%,且在P4時刻Broker1的磁盤占用量大于閾值80%,而負載較低的Broker5和Broker6在P1-P....
本文編號:3928903
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/3928903.html
最近更新
教材專著