ACE框架在網路遊戲伺服器中的設計與應用

2021-09-30 07:11:39 字數 1354 閱讀 3781

隨著計算機網路的發展,特別是網際網路的出現,數字娛樂和網路遊戲產業得到了蓬勃的發展,異軍突起的網路遊戲成為中國網路產業中的先鋒。而由於資訊科技的進步,計算機、手機以及不同的傳媒終端等不斷湧現,如何將這些眾多不同的終端通過網際網路進行互聯互動成為一大技術難點,而這些難點的突破取決於網路遊戲伺服器的開發。目前在各種伺服器通訊軟體的設計和開發中,已經廣泛地使用到軟體設計模式。尤其在大型的伺服器通訊軟體開發中常會採用模組化設計。當乙個龐大的伺服器系統執行任務時,往往要通過其中不同的模組進行協作完成,在這種情況下各機間的資料通訊會變得異常繁瑣和複雜。另外不同作業系統通訊機制的不同也會影響通訊軟體的開發和效率,網路程式設計人員通常從底層進行開發,這大大增加了軟體開發的難度和週期。針對以上存在的問題,ace自適應通訊構架給出了良好的解決方案,ace能夠跨越多種作業系統平台,可進行通用的網路程式設計任務,並結合軟體設計模式,避免了通訊軟體根據不同環境需要重新開發的弱點,減少了軟體開發的週期和資金,簡化和強化了系統的設計實現。

1 ace框架

大多數的網路化應用可以通過ace這樣的可移植中介軟體進行開發,因為ace封裝並加強了本地作業系統機制,通過其元件可以移除底層作業系統api的繁瑣和易錯性建立可重用的網路程式。

2 網路遊戲伺服器系統框架的設計

在設計網路伺服器的過程中,如何保證伺服器的安全和最大限度地支援更多的客戶端連線是擺在開發者面前乙個重要的問題。為了解決這2大問題,根據經驗,在開發遊戲伺服器的過程中,採用如下的伺服器架構可有效解決上述2個問題。

2.1 支援gate的遊戲伺服器架構

在該架構下,client和gate server相連,而不是直接和game server相連。gate server主要負責**客戶端和game server之間的資料報,game server負責處理遊戲的所有邏輯。如圖1所示。

採用該架構,有如下幾個優點:客戶端通過gate setver和遊戲伺服器game servet相連,game server ip對外不可見,這樣game server更安全、更不易受攻擊。乙個game server同樣也可以對應若干個gate server,當某個gate server受攻擊或停機後,其他的gate server仍然照常執行,和其他gate server相連的客戶端仍然可正常進行遊戲;可支援更多的客戶端連線。gate server把眾多的客戶端連線分散到多個game server中去,而不是獨自來承擔,從而可支援更多的客戶端連線;gate server可分擔一部分安全管理工作,減輕game server的壓力。例如若某個客戶端在一段時間內不發資料報,則把該客戶端踢下線的工作可由gate server來完成。

ACE框架在網路遊戲伺服器中的設計與應用

陶 道,萬旺根 上海大學 通訊與資訊工程學院 上海 200072 隨著計算機網路的發展,特別是網際網路的出現,數字娛樂和網路遊戲產業得到了蓬勃的發展,異軍突起的網路遊戲成為中國網路產業中的先鋒。而由於資訊科技的進步,計算機 手機以及不同的傳媒終端等不斷湧現,如何將這些眾多不同的終端通過網際網路進行互...

網路遊戲 伺服器

using system using system.collections.generic using system.linq using system.text using system.threading.tasks using system.net.sockets using system.n...

《網路遊戲伺服器程式設計》

fd clr s,set removes the descriptor s from set.fd isset s,set nonzero if s is a member of theset.otherwise,zero.fd set s,set adds descriptor s to set....