天天看點

網絡遊戲伺服器端架構設計

一款大型的網遊的開發主要由遊戲策劃,伺服器端,用戶端,美工,遊戲測試,使用者體驗等幾部分組成,其中伺服器端的開發絕對是一個程式員大展身手的地方。隻要你崇拜技術,熱愛程式設計,在伺服器端開發的世界裡就有你的光芒。下面談一談伺服器端的整體架構。

網絡遊戲伺服器端架構設計

伺服器端的整體架構如上圖所示,首先,auth就是玩家的登入界面,玩家輸入使用者名和密碼之後,auth就會直接去accountdb驗證賬戶的合法性。然後,如果使用者通過驗證,auth就會将玩家帶到伺服器選擇界面(例如第二大二區的xxx伺服器)。之後,scenemanager會根據玩家的選擇搜尋相應的伺服器玩家清單并将玩家帶到角色選擇界面,如果玩家在該伺服器上已經建立角色,玩家就會看到他的人物形象,否則沒有。玩家選擇角色之後scenemanager将玩家帶到mapserver(真正的遊戲世界)中,mapserver從databaseserver中加載所有的玩家角色資訊,此時玩家已經進入遊戲世界。注意:一個伺服器中可以有很多個mapserver,但其他的伺服器隻有一個,原因是遊戲世界太大,不可能隻放在一個伺服器上。

下面對各個伺服器的具體解釋:

①場景管理服務端為一組伺服器内唯一,所有的服務端都要于它相連接配接,它的作用是協調資料,包括資料的跨服務端傳輸等。

②角色處理伺服器為一組伺服器内唯一,用戶端驗證完賬号密碼後首先連接配接它,負責建立、删除、選擇角色

③資料庫服務端也是一組伺服器内唯一,内部儲存的全局玩家資料,使用緩存機制保證效率,是實體資料庫的前端。

       ④地圖服務端和副本服務端可以有一至多個承載着具體的用戶端連接配接,處理地圖邏輯。

⑤聊天、好友、組隊、幫派等服務端也是一組内唯一,其作用是單獨處理相關邏輯,是為了減少地圖服務端的邏輯。

繼續閱讀