游戲服務器端軟件的架構

現代電子游戲,基本上都會使用一定的網絡功能。從驗證正版,到多人交互等等,都需要架設一些專用的游戲服務器,以及編寫在服務器上的程序。因此,游戲服務器端軟件的架構,本質上也是游戲服務器這個特定領域的軟件架構。
軟件架構的分析,可以通過不同的層面入手。比較經典的軟件架構描述,包含了以下幾種架構:
運行時架構——這種架構關心如何解決運行效率問題,通常以程序進程圖、數據流圖為表達方式。在大多數開發團隊的架構設計文檔中,都會包含運行時架構,說明這是一種非常重要的設計方面。這種架構也會顯著的影響軟件代碼的開發效率和部署效率。本文主要討論的是這種架構。
邏輯架構——這種架構關心軟件代碼之間的關系,主要目的是為了提高軟件應對需求變更的便利性。人們往往會以類圖、模塊圖來表達這種架構。這種架構設計在需要長期運營和重用性高的項目中,有至關重要的作用。因為軟件的可擴展性和可重用度基本是由這個方面的設計決定的。特別是在游戲領域,需求變更的頻繁程度,在多個互聯網產業領域里可以說是最高的。
物理架構——關心軟件如何部署,以機房、游戲服務器、網絡設備為主要描述對象。
數據架構——關心軟件涉及的數據結構的設計,對于數據分析挖掘,多系統協作有較大的意義。
開發架構——關心軟件開發庫之間的關系,以及版本管理、開發工具、編譯構建的設計,主要為了提高多人協作開發,以及復雜軟件庫引用的開發效率。現在流行的集成構建系統就是一種開發架構的理論。【艾娜】

