遊戲服務器的經常使用架構

阿里雲代金券 | 阿里雲優惠券 |阿里雲優惠碼|雲服務器|阿里雲|阿里雲代金券 – 限時領取1000元阿里雲代金券 阿里雲官方優惠券,可直接抵扣訂單金額點擊前往官網領取html

遊戲服務器,是一個會長期運行程序,而且它還要服務於多個不定時,不定點的網絡請求。因此這類服務的特色是要特別關注穩定性和性能。這類程序若是須要多個協做來提升承載能力,則還要關注部署和擴容的便利性;同時,還須要考慮如何實現某種程度容災需求。因爲多進程協同工做,也帶來了開發的複雜度,這也是須要關注的問題。 遊戲服務器架構要素 對於遊戲服務端架構,最重要的三個部分就是,如何使用CPU、內存、網卡的設計:編程

  • 內存架構:主要決定服務器如何使用內存,以最大化利用服務器端內存來提升承載量,下降服務延遲。
  • 邏輯架構:設計如何使用進程、線程、協程這些對於CPU調度的方案。選擇同步、異步等不一樣的編程模型,以提升服務器的穩定性和承載量。能夠分區分服,也能夠採用世界服的方式,將相同功能模塊劃分到不一樣的服務器來處理。
  • 通訊模式:決定使用何種方式通信。基於遊戲類型不一樣採用不一樣的通訊模式,好比http,tcp,udp等。

分區分服RPG遊戲(RPG頁遊)後端

分服模型是遊戲服務器中最典型,也是歷久最悠久的模型。在早期服務器的承載量達到上限的時候,遊戲開發者就經過架設更多的服務器來解決。這樣提供了不少個遊戲的「平行世界」,讓遊戲中的人人之間的比較,產生了更多的空間。其特徵是遊戲服務器是一個個單獨的世界。每一個服務器的賬號是獨立的,每臺服務器用戶的狀態都是不同的,一個服就是一個世界,你們各不牽扯。 後來遊戲玩家呼籲要跨服打架,因而就出現了跨服戰,再加上隨着遊戲的運行,單個服務器的遊戲活躍玩家愈來愈少,因此後期就有了服務器的合併以及遷移,慢慢的以服務器的開放、合併造成了一套成熟的運營手段。目前多數遊戲還採用分服的結構來架設服務器,多數頁遊仍是採用這種模式。服務器

數據共享遊戲服務器網絡

網關部分分離成單端的gate服務器,DB部分分離爲DB服務器,把網絡功能單獨提取出來,讓用戶統一去鏈接一個網關服務器,再有網關服務器轉發數據到後端遊戲服務器。而遊戲服務器之間數據交換也統一鏈接到網管進行交換。全部有DB交互的,都鏈接到DB服務器來代理處理。

場景服務器:它負責完成主要的遊戲邏輯,這些邏輯包括:角色在遊戲場景中的進入與退出、角色的行走與跑動、角色戰鬥(包括打怪)、任務的認領等。場景服務器設計的好壞是整個遊戲世界服務器性能差別的主要體現,它的設計難度不只僅在於通訊模型方面,更主要的是整個服務器的體系架構和同步機制的設計。 非場景服務器:它主要負責完成與遊戲場景不相關的遊戲邏輯,這些邏輯不依靠遊戲的地圖系統也能正常進行,好比公會聊天或世界聊天,之因此把它從場景服務器中獨立出來,是爲了節省場景服務器的CPU和帶寬資源,讓場景服務器可以儘量快地處理那些對遊戲流暢性影響較大的遊戲邏輯。 網關服務器: 在類型一種的架構中,玩家在多個地圖跳轉或者場景切換的時候採用跳轉的模式,以此進行跳轉不一樣的服務器。還有一種方式是把這些服務器的節點都經過網關服務器管理,玩家和網關服務器交互,每一個場景或者服務器切換的時候,也有網關服務器統一來交換數據,如此玩家操做會比較流暢。架構

房間遊戲異步

房間類玩法和MMORPG有很大的不一樣,在於其在線廣播單元的不肯定性和廣播數量很小。並且須要匹配一臺房間服務器讓少數人進入一個服務器。 這一類遊戲最重要的是其「遊戲大廳」的承載量,每一個「遊戲房間」受邏輯所限,須要維持和廣播的玩家數據是有限的,可是「遊戲大廳」須要維持至關高的在線用戶數,因此通常來講,這種遊戲仍是須要作「分服」的。典型的遊戲就是《英雄聯盟》這一類遊戲了。而「遊戲大廳」裏面最有挑戰性的任務,就是「自動匹配」玩家進入一個「遊戲房間」,這須要對全部在線玩家作搜索和過濾。 玩家先登陸「大廳服務器」,而後選擇組隊遊戲的功能,服務器會通知參與的全部遊戲客戶端,新開一條鏈接到房間服務器上,這樣全部參與的用戶就能在房間服務器裏進行遊戲交互了。tcp

阿里雲代金券 | 阿里雲優惠券 |阿里雲優惠碼|雲服務器|阿里雲|阿里雲代金券 – 限時領取1000元阿里雲代金券 阿里雲官方優惠券,可直接抵扣訂單金額點擊前往官網領取性能

相關文章
相關標籤/搜索