專利名稱:一種網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法
ー種網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法技術(shù)領(lǐng)域
本發(fā)明實(shí)施方式涉及網(wǎng)絡(luò)游戲技術(shù)領(lǐng)域,更具體地,涉及ー種網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法。
背景技術(shù):
網(wǎng)絡(luò)(Online Game),又稱“在線游戲”,簡稱“網(wǎng)游”,指以互聯(lián)網(wǎng)為傳輸媒介,以游戲運(yùn)營商服務(wù)器和用戶計(jì)算機(jī)為處理終端,以游戲客戶端軟件為信息交互窗ロ的g在實(shí)現(xiàn)娛樂、休閑、交流和取得虛擬成就的具有可持續(xù)性的個(gè)體性多人在線游戲。網(wǎng)絡(luò)游戲區(qū)別與單機(jī)游戲而言的,是指玩家必須通過互聯(lián)網(wǎng)連接來進(jìn)行多人游戲。一般指由多名玩家通過計(jì)算機(jī)網(wǎng)絡(luò)在虛擬的環(huán)境下對人物角色及場景按照一定的規(guī)則進(jìn)行操作以達(dá)到娛樂和互動(dòng)目的的游戲產(chǎn)品集合。
大型多人在線網(wǎng)絡(luò)游戲經(jīng)常是成千上萬的玩家同時(shí)在線,為了能夠?qū)ν婕业男畔⑦M(jìn)行實(shí)時(shí)響應(yīng),通常需要多臺服務(wù)器處理來自各個(gè)玩家的信息。因此,尋找高效的負(fù)載均衡算法成為網(wǎng)絡(luò)游戲中需要解決的重要問題之ー。
目前現(xiàn)有技術(shù)中,對網(wǎng)絡(luò)游戲中負(fù)載均衡技術(shù)的研究還不是很多,動(dòng)態(tài)地圖分配是現(xiàn)在網(wǎng)絡(luò)游戲中普遍采用的策略,分為局部和全局兩大類。
在局部負(fù)載均衡策略中,按照地圖上虛擬對象的分布密度分割地圖,當(dāng)服務(wù)器超載時(shí),在局部尋找輕載服務(wù)器進(jìn)行均衡。這種局部的動(dòng)態(tài)負(fù)載均衡重新分配所需要的總開銷比全局要小的多。然而,當(dāng)負(fù)載分配不均勻,一些相鄰服務(wù)器都已滿負(fù)載的時(shí)候,局部負(fù)載均衡的性能會(huì)驟然下降,因此負(fù)載均衡效率并不高。
在全局負(fù)載均衡策略中,毎次服務(wù)器超載時(shí),都要對所有的服務(wù)器重新進(jìn)行負(fù)載均衡。這種全局負(fù)載均衡能夠從全局的角度更加均勻的分配負(fù)載。然而,隨著玩家和服務(wù)器的增多,系統(tǒng)的開銷和需要遷移的玩家數(shù)量將急劇增長,因此負(fù)載均衡的效率也并不高。發(fā)明內(nèi)容
本發(fā)明實(shí)施方式提出一種網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法,提高負(fù)載均衡效率。
本發(fā)明實(shí)施方式的具體方案如下
一種網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,包括
當(dāng)判定服務(wù)器超載時(shí),將該超載服務(wù)器記入到負(fù)載服務(wù)器列表,并將該超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;
遍歷輕載服務(wù)器列表以查找超載服務(wù)器,其中將查找到的超載服務(wù)器從輕載服務(wù)器列表中刪除并記入到負(fù)載服務(wù)器列表,并將該查找到的超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;
根據(jù)輕載服務(wù)器列表中的負(fù)載信息確定出所述輕載服務(wù)器列表中服務(wù)器的負(fù)載狀況,并將輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器與負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器執(zhí)行負(fù)載均衡,并更新所述負(fù)載服務(wù)器列表和輕載服務(wù)器列表。、
所述鄰近服務(wù)器的負(fù)載信息包括鄰近服務(wù)器的活躍角色數(shù)和休息角色數(shù)。
所述判定服務(wù)器超載為
判定該服務(wù)器的負(fù)載大于Tl ;其中
Tl=O. 90 XMaxB;
MaxB為不影響處理能力和響應(yīng)時(shí)間情況下的服務(wù)器最大負(fù)載值。
所述服務(wù)器最大負(fù)載值等于活躍角色數(shù)*25+休息角色數(shù)。
所述鄰近服務(wù)器為該超載服務(wù)器的邏輯鄰近服務(wù)器或隨機(jī)查找到的服務(wù)器。
該方法進(jìn)ー步包括在負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器的與輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器執(zhí)行負(fù)載均衡后,進(jìn)ー步判斷負(fù)載服務(wù)器列表中的該服務(wù)器負(fù)載是否大于負(fù)載上限值, 如果是則繼續(xù)與輕載服務(wù)器列表中負(fù)載次最輕的服務(wù)器執(zhí)行負(fù)載均衡,否則從負(fù)載服務(wù)器列表中刪除該服務(wù)器。
所述負(fù)載上限值為T2,其中T2=0. 80XMaxB;
MaxB為不影響處理能力和響應(yīng)時(shí)間情況下的服務(wù)器最大負(fù)載值。
所述服務(wù)器最大負(fù)載值等于活躍角色數(shù)*25+休息角色數(shù)。
從上述技術(shù)方案中可以看出,在本發(fā)明實(shí)施方式中,當(dāng)判定服務(wù)器超載時(shí),將該超載服務(wù)器記入到負(fù)載服務(wù)器列表,并將該超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;然后遍歷輕載服務(wù)器列表以查找超載服務(wù)器,其中將查找到的超載服務(wù)器從輕載服務(wù)器列表中刪除并記入到負(fù)載服務(wù)器列表,并將該查找到的超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;接著根據(jù)輕載服務(wù)器列表中的負(fù)載信息確定出所述輕載服務(wù)器列表中服務(wù)器的負(fù)載狀況,并將輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器與負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器執(zhí)行負(fù)載均衡,并更新負(fù)載服務(wù)器列表和輕載服務(wù)器列表。
由此可見,應(yīng)用本發(fā)明實(shí)施方式之后,通過動(dòng)態(tài)地尋找輕載服務(wù)器,無論是在超載玩家和移動(dòng)玩家數(shù)量的比率上,還是在系統(tǒng)的代價(jià)上,都有很好的表現(xiàn),因此顯著提高了負(fù)載均衡的效率。本發(fā)明實(shí)施方式采取了高效的輕載服務(wù)器尋找方法,服務(wù)器的并發(fā)承載玩家數(shù)量提高了 I倍,游戲服務(wù)器能夠給玩家提供非??焖俚捻憫?yīng)速度,滿足了網(wǎng)絡(luò)游戲高實(shí)時(shí)性的需求。
而且,本發(fā)明實(shí)施方式保證了游戲系統(tǒng)運(yùn)行穩(wěn)定,這對于要求具有實(shí)時(shí)性、擴(kuò)展性、靈活性的網(wǎng)絡(luò)游戲服務(wù)器架構(gòu)是很適合的。
圖I為根據(jù)本發(fā)明實(shí)施方式的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法流程圖2為根據(jù)本發(fā)明實(shí)施方式的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法示范性流程圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對本發(fā)明作進(jìn)ー步的詳細(xì)描述。
在本發(fā)明實(shí)施方式中,提出ー種動(dòng)態(tài)的輕載服務(wù)器尋找方法。該方法較好的克服了局部和全局的弊端,降低了系統(tǒng)代價(jià),提高了系統(tǒng)的響應(yīng)速度和呑吐量,從而提高負(fù)載均衡效率。
圖I為根據(jù)本發(fā)明實(shí)施方式的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法流程圖。
如圖I所示,該方法包括
步驟101 :當(dāng)判定服務(wù)器超載時(shí),將該超載服務(wù)器記入到負(fù)載服務(wù)器列表,并將該超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表。
在這里,負(fù)載服務(wù)器列表(比如,可以命名為OverList)是ー個(gè)數(shù)組,它是在尋找輕載服務(wù)器算法中,用來存儲負(fù)載服務(wù)器的列表。
輕載服務(wù)器列表(比如,可以命名為LightList)是ー個(gè)數(shù)組,它是在尋找輕載服務(wù)器算法中,用來存儲輕載服務(wù)器的列表。
在這里,鄰近服務(wù)器的負(fù)載信息具體可以包括鄰近服務(wù)器的活躍角色數(shù)和休息角色數(shù),等等。而且,鄰近服務(wù)器可以為該超載服務(wù)器的邏輯鄰近服務(wù)器或隨機(jī)查找到的服務(wù)器。比如,鄰近服務(wù)器可以是IP地址接近的服務(wù)器或者邏輯分組相同或接近的服務(wù)器, 或者是完全隨機(jī)查找到的服務(wù)器。
在一個(gè)實(shí)施方式中,當(dāng)該服務(wù)器的負(fù)載大于Tl時(shí)則認(rèn)為該服務(wù)器已經(jīng)超載,其中 Tl表示超載服務(wù)器進(jìn)行合并時(shí)負(fù)載的下限值。
優(yōu)選地,Tl=O. 90 XMaxB ;而MaxB為不影響處理能力和響應(yīng)時(shí)間情況下的服務(wù)器最大負(fù)載值。
為了便于計(jì)算,可以假定所有服務(wù)器可承擔(dān)的最大負(fù)載值MaxB均相同。
優(yōu)選地,服務(wù)器最大負(fù)載值MaxB可以等于活躍角色數(shù)*25+休息角色數(shù)。
舉例說明,假設(shè)服務(wù)器A的最大負(fù)載值為MaxB,而且服務(wù)器A當(dāng)前負(fù)載已經(jīng)大于 Tl (即0. 90 XMaxB),則認(rèn)為服務(wù)器A超載。假設(shè)該服務(wù)器A的鄰近服務(wù)器為服務(wù)器B和服務(wù)器C。此時(shí),將服務(wù)器A記載入負(fù)載服務(wù)器列表(OverList)中,而且將服務(wù)器B以及服務(wù)器B的負(fù)載信息、服務(wù)器C以及服務(wù)器C的負(fù)載信息記載入輕載服務(wù)器列表(LightList) 中。
以上雖然詳細(xì)羅列了服務(wù)器超載值Tl的具體大小,本領(lǐng)域技術(shù)人員可以意識到, 這種羅列僅僅是示范性的,并不用于限定本發(fā)明實(shí)施方式的保護(hù)范圍。
步驟102 :遍歷輕載服務(wù)器列表以查找超載服務(wù)器,其中將查找到的超載服務(wù)器從輕載服務(wù)器列表中刪除并記入到負(fù)載服務(wù)器列表,并將該查找到的超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表。
在這里,首先遍歷輕載服務(wù)器列表以查找新的超載服務(wù)器。
查找方法類似于步驟101,即當(dāng)服務(wù)器的負(fù)載大于Tl時(shí)則認(rèn)為該服務(wù)器已經(jīng)超載,其中Tl表示超載服務(wù)器進(jìn)行合并時(shí)負(fù)載的下限值。優(yōu)選地,Tl=O. 90XMaxB ;MaxB為不影響處理能力和響應(yīng)時(shí)間情況下的服務(wù)器最大負(fù)載值。
接著上面的實(shí)例,假設(shè)服務(wù)器B的當(dāng)前負(fù)載大于Tl,服務(wù)器C的當(dāng)前負(fù)載小于Tl,則認(rèn)為服務(wù)器B實(shí)際上已經(jīng)超載,而服務(wù)器C沒有超載,此時(shí)從輕載服務(wù)器列表 (LightList)中刪除服務(wù)器B,并且將服務(wù)器B記載到負(fù)載服務(wù)器列表(OverList),而繼續(xù)將服務(wù)器C保留在輕載服務(wù)器列表(LightList)中。
此步驟為針對輕載服務(wù)器列表的遍歷循環(huán)步驟,因此需要針對服務(wù)器B繼續(xù)查找、其鄰近服務(wù)器,假設(shè)服務(wù)器B的鄰近服務(wù)器包括服務(wù)器D和服務(wù)器E,則將服務(wù)器D及其負(fù)載信息,服務(wù)器E及其負(fù)載信息均記載到輕載服務(wù)器列表(LightList)中。如果輕載服務(wù)器列表(LightList)中持續(xù)有超載服務(wù)器,則應(yīng)該持續(xù)尋找該超載服務(wù)器的鄰近服務(wù)器。
假設(shè)服務(wù)器D和服務(wù)器E均不超載,至此,負(fù)載服務(wù)器列表(OverList)中包括服務(wù)器A和服務(wù)器B,輕載服務(wù)器列表(LightList)中包括服務(wù)器C、服務(wù)器D和服務(wù)器E。
步驟103 :根據(jù)輕載服務(wù)器列表中的負(fù)載信息確定出輕載服務(wù)器列表中服務(wù)器的負(fù)載狀況,并將輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器與負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器執(zhí)行負(fù)載均衡,并更新負(fù)載服務(wù)器列表和輕載服務(wù)器列表。
在這里,將負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器與輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器執(zhí)行負(fù)載均衡步驟,然后更新負(fù)載服務(wù)器列表和輕載服務(wù)器列表。
在一個(gè)實(shí)施方式中,在負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器的與輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器執(zhí)行負(fù)載均衡后,本發(fā)明實(shí)施方式進(jìn)ー步判斷負(fù)載服務(wù)器列表中的該服務(wù)器負(fù)載是否大于負(fù)載上限值T2,如果是則繼續(xù)與輕載服務(wù)器列表中負(fù)載次最輕的服務(wù)器執(zhí)行負(fù)載均衡,否則從負(fù)載服務(wù)器列表中刪除該服務(wù)器
為了避免出現(xiàn)服務(wù)器間負(fù)載抖動(dòng)的現(xiàn)象,可以設(shè)置一個(gè)用來限制系統(tǒng)負(fù)載均衡后的每個(gè)服務(wù)器負(fù)載的上限值T2。優(yōu)選地,可以取T2=0. SOXMaxB。
循環(huán)該步驟,直到負(fù)載服務(wù)器列表(OverList)中所有服務(wù)器負(fù)載平均值小于等于 T2。
以上雖然詳細(xì)羅列了負(fù)載上限值T2的具體大小,本領(lǐng)域技術(shù)人員可以意識到,這種羅列僅僅是示范性的,并不用于限定本發(fā)明實(shí)施方式的保護(hù)范圍。
基于上述詳細(xì)分析,圖2為根據(jù)本發(fā)明實(shí)施方式的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法示范性流程圖。
如圖2所示,該方法包括
步驟201 :如果服務(wù)器超載且沒有被選擇,就作為負(fù)載均衡的初始服務(wù)器記入負(fù)載服務(wù)器列表(OverList),然后把它的鄰近服務(wù)器的負(fù)載信息(負(fù)載信息包括活躍角色數(shù)和休息角色數(shù))記入輕載服務(wù)器列表(LightList)。
其中0verList是ー個(gè)用來存儲負(fù)載服務(wù)器的列表的數(shù)組;LightList是ー個(gè)用來存儲輕載服務(wù)器的列表的數(shù)組。MaxB表示服務(wù)器在不影響處理能力和響應(yīng)時(shí)間的情況下的最大負(fù)載值,假定所有服務(wù)器可承擔(dān)的最大負(fù)載值均相同。
Tl表示超載服務(wù)器進(jìn)行合并時(shí),負(fù)載的下限值??梢约俣ㄈl=O. 90XMaxB。
T2是ー個(gè)設(shè)定的閾值,它用來限制系統(tǒng)負(fù)載均衡后的每個(gè)服務(wù)器負(fù)載的上限值, 避免出現(xiàn)服務(wù)器間負(fù)載抖動(dòng)的現(xiàn)象,可以假定取T2=0. SOXMaxB。
步驟202 :遍歷LightList中所有服務(wù)器,如果存在服務(wù)器負(fù)載值大于等于Tl的服務(wù)器,則作為負(fù)載服務(wù)器添加到負(fù)載服務(wù)器列表(OverList),并且把它的鄰近服務(wù)器的負(fù)載信息記入輕載服務(wù)器列表(LightList)。因?yàn)長ightList里新増加了服務(wù)器,所以需要繼續(xù)在LightList里尋找負(fù)載的服務(wù)器。
步驟203 :在LightList中選擇負(fù)載最輕的服務(wù)器,并更新OverList和LightList 服務(wù)器列表。
具體包括將輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器與負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器執(zhí)行負(fù)載均衡,并更新負(fù)載服務(wù)器列表和輕載服務(wù)器列表。
比如更新負(fù)載服務(wù)器列表的原則可以是如果負(fù)載服務(wù)器列表中服務(wù)器的負(fù)載在負(fù)載均衡后仍然大于Tl,則保留在負(fù)載服務(wù)器列表中,準(zhǔn)備下ー輪的負(fù)載均衡;如果負(fù)載服務(wù)器列表中服務(wù)器的負(fù)載在負(fù)載均衡后小或等于Tl,則將其在負(fù)載服務(wù)器列表中刪除。更新輕載服務(wù)器列表的原則是如果輕載服務(wù)器列表中服務(wù)器的負(fù)載在負(fù)載均衡后仍然小于等于T2,則保留在輕載服務(wù)器列表中,準(zhǔn)備下ー輪的負(fù)載均衡;如果輕載服務(wù)器列表中服務(wù)器的負(fù)載在負(fù)載均衡后大于T2,則將其在輕載服務(wù)器列表中刪除。
步驟204 :循環(huán)執(zhí)行,直到OverList中所有服務(wù)器負(fù)載平均值正常為止。在這里, 循環(huán)執(zhí)行,直到OverList中所有服務(wù)器負(fù)載平均值小于等于T2。
綜上所述,在本發(fā)明實(shí)施方式中,當(dāng)判定服務(wù)器超載時(shí),將該超載服務(wù)器記入到負(fù)載服務(wù)器列表,并將該超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;然后遍歷輕載服務(wù)器列表以查找超載服務(wù)器,其中將查找到的超載服務(wù)器從輕載服務(wù)器列表中刪除并記入到負(fù)載服務(wù)器列表,并將該查找到的超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;接著根據(jù)輕載服務(wù)器列表中的負(fù)載信息確定出所述輕載服務(wù)器列表中服務(wù)器的負(fù)載狀況,并將輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器與負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器執(zhí)行負(fù)載均衡,并更新所述負(fù)載服務(wù)器列表和輕載服務(wù)器列表。
由此可見,應(yīng)用本發(fā)明實(shí)施方式之后,通過動(dòng)態(tài)地尋找輕載服務(wù)器,無論是在超載玩家和移動(dòng)玩家數(shù)量的比率上,還是在系統(tǒng)的代價(jià)上,都有很好的表現(xiàn),因此顯著提高了負(fù)載均衡的效率。本發(fā)明實(shí)施方式采取了高效的輕載服務(wù)器尋找方法,服務(wù)器的并發(fā)承載玩家數(shù)量提高了 I倍,游戲服務(wù)器能夠給玩家提供非??焖俚捻憫?yīng)速度,滿足了網(wǎng)絡(luò)游戲高實(shí)時(shí)性的需求。
而且,本發(fā)明實(shí)施方式保證了游戲系統(tǒng)運(yùn)行穩(wěn)定,這對于要求具有實(shí)時(shí)性、擴(kuò)展性、靈活性的網(wǎng)絡(luò)游戲服務(wù)器架構(gòu)是很適合的。
以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,其特征在于,包括 當(dāng)判定服務(wù)器超載時(shí),將該超載服務(wù)器記入到負(fù)載服務(wù)器列表,并將該超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表; 遍歷輕載服務(wù)器列表以查找超載服務(wù)器,其中將查找到的超載服務(wù)器從輕載服務(wù)器列表中刪除并記入到負(fù)載服務(wù)器列表,并將該查找到的超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表; 根據(jù)輕載服務(wù)器列表中的負(fù)載信息確定出所述輕載服務(wù)器列表中服務(wù)器的負(fù)載狀況,并將輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器與負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器執(zhí)行負(fù)載均衡,并更新所述負(fù)載服務(wù)器列表和輕載服務(wù)器列表。
2.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,所述鄰近服務(wù)器的負(fù)載信息包括鄰近服務(wù)器的活躍角色數(shù)和休息角色數(shù)。
3.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,所述判定服務(wù)器超載為 判定該服務(wù)器的負(fù)載大于Tl ;其中Tl=O. 90XMaxB; MaxB為不影響處理能力和響應(yīng)時(shí)間情況下的服務(wù)器最大負(fù)載值。
4.根據(jù)權(quán)利要求3所述的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,所述服務(wù)器最大負(fù)載值等于活躍角色數(shù)*25+休息角色數(shù)。
5.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,所述鄰近服務(wù)器為該超載服務(wù)器的邏輯鄰近服務(wù)器或隨機(jī)查找到的服務(wù)器。
6.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,其特征在于,該方法進(jìn)一步包括 在負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器的與輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器執(zhí)行負(fù)載均衡后,進(jìn)一步判斷負(fù)載服務(wù)器列表中的該服務(wù)器負(fù)載是否大于負(fù)載上限值,如果是則繼續(xù)與輕載服務(wù)器列表中負(fù)載次最輕的服務(wù)器執(zhí)行負(fù)載均衡,否則從負(fù)載服務(wù)器列表中刪除該服務(wù)器。
7.根據(jù)權(quán)利要求6所述的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,其特征在于,所述負(fù)載上限值為 T2,其中 T2=0. 80XMaxB; MaxB為不影響處理能力和響應(yīng)時(shí)間情況下的服務(wù)器最大負(fù)載值。
8.根據(jù)權(quán)利要求6所述的網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡的方法,其特征在于,所述服務(wù)器最大負(fù)載值等于活躍角色數(shù)*25+休息角色數(shù)。
全文摘要
本發(fā)明實(shí)施方式提出一種網(wǎng)絡(luò)游戲動(dòng)態(tài)負(fù)載均衡方法。包括當(dāng)判定服務(wù)器超載時(shí),將該超載服務(wù)器記入到負(fù)載服務(wù)器列表,并將該超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;遍歷輕載服務(wù)器列表以查找超載服務(wù)器,將該查找到的超載服務(wù)器的鄰近服務(wù)器及其負(fù)載信息記入到輕載服務(wù)器列表;將輕載服務(wù)器列表中負(fù)載最輕的服務(wù)器與負(fù)載服務(wù)器列表中負(fù)載最重的服務(wù)器執(zhí)行負(fù)載均衡,并更新負(fù)載服務(wù)器列表和輕載服務(wù)器列表。通過動(dòng)態(tài)地尋找輕載服務(wù)器,顯著提高了負(fù)載均衡的效率,能夠給玩家提供非常快速的響應(yīng)速度,滿足了網(wǎng)絡(luò)游戲高實(shí)時(shí)性的需求。
文檔編號H04L29/08GK102710615SQ20121015101
公開日2012年10月3日 申請日期2012年5月15日 優(yōu)先權(quán)日2012年5月15日
發(fā)明者王洪彥 申請人:北京像素軟件科技股份有限公司