leaf 是乙個使用 go 語言開發的開源遊戲伺服器框架,注重執行效率並追求極致的開發效率。leaf 適用於幾乎所有的遊戲型別。其主要的特性:
乙個 leaf 開發的遊戲伺服器由多個模組組成(例如 leafserver),模組有以下特點:
leaf 不建議在遊戲伺服器中設計過多的模組。
遊戲伺服器在啟動時進行模組的註冊,例如:12
345leaf.run(
game.module,
gate.module,
login.module,
)
這裡按順序註冊了 game、gate、login 三個模組。每個模組都需要實現介面:12
type module inte***ce
leaf 首先會在同乙個 goroutine 中按模組註冊順序執行模組的 oninit 方法,等到所有模組 oninit 方法執行完成後則為每乙個模組啟動乙個 goroutine 並執行模組的 run 方法。最後,遊戲伺服器關閉時(ctrl + c 關閉遊戲伺服器)將按模組註冊相反順序在同乙個 goroutine 中執行模組的 ondestroy 方法。
leafserver 是乙個基於 leaf 開發的遊戲伺服器,我們以 leafserver 作為起點。
獲取 leafserver:
編譯 leafserver:
1go
install
server
如果一切順利,執行 server 你可以獲得以下輸出:
12015
/08/26
22:11:27 [release] leaf starting up
敲擊 ctrl + c 關閉遊戲伺服器,伺服器正常關閉輸出:
12015
/08/26
22:12:30 [release] leaf closing down (signal: interrupt)
專案主頁:
c 遊戲伺服器框架
2 muduo是乙個基於 reactor 模式的 c 網路庫 3 boost asio 是乙個非同步的網路框架 官網 第三方教程 4 libevent 官網 5 ace是乙個很成熟的中介軟體產品,為自適應通訊環境,但它過於巨集大,一堆的設計模式,架構是一層又一層,對初學者來說,有點困難。pss開源框...
網易遊戲伺服器開發框架 Pomelo
pomelo 是由網易開發的基於node.js開發的高效能 分布式遊戲伺服器框架,也可作為高實時web應用框架。pomelo的應用範圍 pomelo最適合的應用領域是網頁遊戲 社交遊戲 移動遊戲的服務端,開發者會發現pomelo可以用如此少的 達到強大的擴充套件性和伸縮性。當然還不僅僅是遊戲,很多人...
網易遊戲伺服器開發框架 Pomelo
引用 pomelo 是由網易開發的基於node.js開發的高效能 分布式遊戲伺服器框架,也可作為高實時web應用框架。pomelo的應用範圍 pomelo最適合的應用領域是網頁遊戲 社交遊戲 移動遊戲的服務端,開發者會發現pomelo可以用如此少的 達到強大的擴充套件性和伸縮性。當然還不僅僅是遊戲,...