深析有線負載均衡的問題
雖然有線負載均衡技術(shù)發(fā)展的比較早,但是發(fā)展之初,也是存在著很多問題。那么本文就將為大家介紹一下有線分布式系統(tǒng)中的負載均衡問題和解決方式以及技術(shù)發(fā)展瓶頸等。
有線負載均衡
有線分布式系統(tǒng)負載均衡的技術(shù)難點
負載均衡需要解決的核心問題有兩個:一是何時進行任務(wù)遷移,另一個是怎樣進行任務(wù)遷移。要實現(xiàn)負載均衡,難點在以下幾個方面:
對系統(tǒng)的負載情況進行準確的評價。
負載均衡要求進行某些額外附加處理,如系統(tǒng)內(nèi)各節(jié)點負載信息的收集、存儲、決策、任務(wù)遷移等。這些額外處理帶來額外的網(wǎng)絡(luò)和主機開銷,是對系統(tǒng)性能的損害。
要避免負載抖動,即被遷移的任務(wù)在各節(jié)點之間被不斷遷移而得不到執(zhí)行。
解決系統(tǒng)各節(jié)點的硬件或軟件的配置差異問題。
當前有線網(wǎng)絡(luò)的負載均衡集中在Web服務(wù)器、郵件服務(wù)器、電子商務(wù)中的業(yè)務(wù)服務(wù)器等環(huán)境下的應(yīng)用問題。
有線負載均衡算法的分類
負載均衡有許多種分類方法,但是從整體上可以按照與系統(tǒng)的負載狀態(tài)是否相關(guān),分為狀態(tài)無關(guān)均衡和狀態(tài)相關(guān)均衡兩大類。前者又叫靜態(tài)均衡,后者又叫動態(tài)均衡。靜態(tài)負載均衡是機械式的,按固定的模式或規(guī)則來分配客戶請求,而不管服務(wù)器的運行情況。動態(tài)負載均衡則帶有智能化的特征,能夠根據(jù)各臺服務(wù)器運行時負載情況來恰當?shù)胤峙湔埱蟆?/p>
狀態(tài)無關(guān)均衡,就是根據(jù)以往的經(jīng)驗或系統(tǒng)本身信息的收集,把外來的任務(wù)分配給各個節(jié)點,或?qū)δ承┕?jié)點上的任務(wù)進行重新分配。由于這樣的均衡決策是與系統(tǒng)當前狀態(tài)無關(guān)的,帶有一定的盲目性,因而,決策的準確性很低,通用性差,有時甚至會造成與預期完全相反的結(jié)果,加劇不均衡的程度,造成系統(tǒng)性能的惡化。
狀態(tài)相關(guān)均衡,其決策取決于系統(tǒng)當前的狀態(tài),也就是說,系統(tǒng)可以根據(jù)當前的負載分布情況,對各個節(jié)點上的任務(wù)進行動態(tài)的調(diào)整,使已經(jīng)分配給超載節(jié)點上的任務(wù),通過通信設(shè)備,遷移到輕載的節(jié)點上去,從而提高系統(tǒng)的資源利用率,減小任務(wù)的平均響應(yīng)時間。動態(tài)均衡法通常包含以下3個方面:
(1)各個節(jié)點間負載信息的收集,方法通常有3種:周期性收集策略、命令驅(qū)動策略、狀態(tài)變化驅(qū)動策略。
(2)根據(jù)所收集的負載信息進行決策:節(jié)點根據(jù)收集的負載信息,確定需要進行負載遷移的節(jié)點對。發(fā)生負載遷移的節(jié)點,根據(jù)實際需要,可以有一對或多對。
(3)實現(xiàn)任務(wù)在各節(jié)點之間的遷移:在有線負載均衡系統(tǒng)中的任務(wù)遷移可分搶先任務(wù)遷移和非搶先任務(wù)遷移兩種。