網關按區域聚集玩家
(轉載請注明來源于金慶的專欄)
目前網游系統中的網關只發揮了隔離內外網和轉發的功能, 至少征途和KOK3是這樣.
按照尹紅春的設計構想,網關還有個區域聚集功能.
區域聚集是這樣的意思: 場景中的許多事件都是區域內廣播的,
如角色或NPC的移動, 攻擊, 狀態變化, 場景服務器不必直接向該區域內的所有人廣播,
而是只需向網關廣播, 然后由各網關向該區域內的人廣播.
因為目前場景服務器的負載并不重, 所以并沒有實現網關的區域聚集.
在KOK3中可能有必要實現網關的區域聚集.
因為KOK3中玩家之間沒有阻擋, 是可以相互重疊和穿越的.
無阻擋設定是為了增大區域內的玩家密度, 讓界域戰爭之類的大型群體活動更爽.
(個人認為這種設定有點怪異, 感覺自己象個鬼魂, 整個世界也是虛無的.)
KOK3場景區域內聚集上萬玩家是可能的, 所以網關的區域聚集功能也是必要的.
玩家的聚集程度越大, 網關區域聚集效果就越明顯.
目前網關選擇是按負載平衡分散的. 一個區域內的玩家應該是平均分散在各個網關.
這種方案是否可以改為按場景選擇網關?
一個場景對應一個網關, 這樣就不必向所有網關廣播了, 只需向對應的網關單獨發送.
玩家切換場景同時切換網關(目前客戶端與網關是保持連接不變的).
客戶端與網關保持連接是否必要?
帳號登錄驗證之后, 角色連接服務器是不需要再次輸密碼的.
連接占用的時間很短, 即使是無縫地圖切換, 也不會造成游戲停頓.
如果網關數量增加到成百上千, 場景向所有網關廣播也比較浪費,
可改為向兩三個網關單獨發送.
對于僅有一兩個玩家的區域, 更是沒必要進行網關廣播.
網關可改為動態增長的, 區域內玩家過多就自動分裂成多個網關.
并且可以助此實現負載均衡.
網關切換可以不立即斷開連接, 保持一段時間后再斷, 防止來回頻繁切換網關.
或者網關對應的場景是重疊的, 不會造成來回頻繁切換網關.
因為網關上的用戶之間無需處理交易之類的交互, 所以這種重疊是簡單的, 可行的.
(轉載請注明來源于金慶的專欄)
目前網游系統中的網關只發揮了隔離內外網和轉發的功能, 至少征途和KOK3是這樣.
按照尹紅春的設計構想,網關還有個區域聚集功能.
區域聚集是這樣的意思: 場景中的許多事件都是區域內廣播的,
如角色或NPC的移動, 攻擊, 狀態變化, 場景服務器不必直接向該區域內的所有人廣播,
而是只需向網關廣播, 然后由各網關向該區域內的人廣播.
因為目前場景服務器的負載并不重, 所以并沒有實現網關的區域聚集.
在KOK3中可能有必要實現網關的區域聚集.
因為KOK3中玩家之間沒有阻擋, 是可以相互重疊和穿越的.
無阻擋設定是為了增大區域內的玩家密度, 讓界域戰爭之類的大型群體活動更爽.
(個人認為這種設定有點怪異, 感覺自己象個鬼魂, 整個世界也是虛無的.)
KOK3場景區域內聚集上萬玩家是可能的, 所以網關的區域聚集功能也是必要的.
玩家的聚集程度越大, 網關區域聚集效果就越明顯.
目前網關選擇是按負載平衡分散的. 一個區域內的玩家應該是平均分散在各個網關.
這種方案是否可以改為按場景選擇網關?
一個場景對應一個網關, 這樣就不必向所有網關廣播了, 只需向對應的網關單獨發送.
玩家切換場景同時切換網關(目前客戶端與網關是保持連接不變的).
客戶端與網關保持連接是否必要?
帳號登錄驗證之后, 角色連接服務器是不需要再次輸密碼的.
連接占用的時間很短, 即使是無縫地圖切換, 也不會造成游戲停頓.
如果網關數量增加到成百上千, 場景向所有網關廣播也比較浪費,
可改為向兩三個網關單獨發送.
對于僅有一兩個玩家的區域, 更是沒必要進行網關廣播.
網關可改為動態增長的, 區域內玩家過多就自動分裂成多個網關.
并且可以助此實現負載均衡.
網關切換可以不立即斷開連接, 保持一段時間后再斷, 防止來回頻繁切換網關.
或者網關對應的場景是重疊的, 不會造成來回頻繁切換網關.
因為網關上的用戶之間無需處理交易之類的交互, 所以這種重疊是簡單的, 可行的.