本人呢,可以說是王者榮耀這款遊戲的一個忠實愛好者吧 。看到這個演進的時候 ,很認真的閱讀了一遍。
當下來說,王者榮耀這個遊戲非常的流行,主播事業也是漸漸盛起 ,從王者榮耀聯想到電子遊戲的架構演進,可以說也是一部非常大的工程 了。
電子遊戲的用戶端主要注重手機上的資源配置設定,以及手機 CPU的占比請況,其中最重要的還是遊戲的伺服器端的設計 以及配置設定情況。遊戲的伺服器一般來說是一個一直運作的程式 ,除了遊戲在進行更新的時候,伺服器的程式可能 會停止運作一小段時間,而且遊戲的伺服器還是要服務于多個 不定時的,不定點的網絡請求,有關于這類軟體的特性非常關注與穩定性以及性能 ,無論大型還是小型的電子遊戲,在進行伺服器端的程式設計時 都需要進行考慮三個方面,分别是如何使用CPU、手機以及電腦内部的記憶體,網卡的設計。
對于伺服器端的系統設計來說還需要考慮儲存玩家的資料,以及遊戲的相關資料。當一些遊戲做的比較大的時候,伺服器端還需要考慮是否使用外挂,當遊戲玩家在不同的裝置進行登陸時,還需要對玩家的遊戲資料進行廣播以及同步。可以說,一款遊戲的伺服器考慮的東西也是非常多的。
遊戲伺服器的演變過程可以從休閑類的、對于互動性比較弱的卡牌類遊戲開始說。
伺服器采取http的通信結構,就相當于現在的web界面的通路。在往後發展由于人們的對于遊戲的需求越來越大,逐漸的出現了長連結遊戲,相關的伺服器也是開發出來。長連結相對于短連結來說具有更高的傳送速度以及效率。而且在長連結中,玩家是具有狀态的,于是出現了類似的養成累的遊戲。伺服器可以實時和用戶端進行連結以及互動。
再往後發展,出現了一款的擁有網遊伺服器的遊戲,是由英國的一名 學生進行開發的一款文字遊戲,采用的是單線程無阻賽,使得各個計算機 的使用者可以玩家可以一起在計算機的世界灣裡進行 探索。也可以完成實時多人互動的網絡遊戲。這個文字遊戲MUDOS使用單線程無阻賽套接服務所有的玩家,并且每隔一秒進行更新所有的對象。直到現在一些小型的遊戲依然是采用的這種伺服器的設計。
進入二十世紀之後,随着圖像處理以及更多地使用者互動。遊戲線上的人數也是越來越多,單個伺服器已經是不能滿足實時更新的要求了。于是出現了分區分服。簡單的來講,就是一個遊戲被分成了幾個平行的世界,每個世界和每個世界的玩家在那時還是不能現在一樣 跨服。在伺服器達到上限時候,開發者通過架設更多地伺服器完成應對人數增加的問題。
由于單線程的限制,再往後發展,逐漸出現了多線程處理以及異步多線程。再往後,将遊戲内的不同功能劃分成不同的伺服器,例如大廳伺服器行走伺服器,大緻可以分為三類場景和非場景以及網管伺服器。
當出現了DOTA類似的大型地圖類遊戲,地圖以及地圖之間的無縫連接配接成了要解決的一個問題,為了解決這個問題,比較以往按照地圖來切割遊戲而言,無縫世界并不存在一塊地圖上面的人有且隻由一台伺服器處理了,此時需要一組伺服器來處理,每台 Node伺服器用來管理一塊地圖區域,由 NodeMaster(NM)來為他們提供總體管理。更高層次的 World則提供大陸級别的管理服務。