天天看點

開源遊戲伺服器架構彙總

轉自:https://gameinstitute.qq.com/community/detail/133153

有哪些開源遊戲伺服器架構,值得學習呢。基于node.js 、java、C#、golang 、c++、python 等技術棧有各種各樣的遊戲架構。 

本文收集一些比較常用的 github上star和fork有一定數量的較為完整的架構 

skynet 

雲風大神的架構這個基本上使用很多的, c+lua的架構。 skynet隻能算是網絡層的輪子但是因為其衆多的使用者還是很不錯的

https://github.com/cloudwu/skynet 

A lightweight online game framework 

使用此引擎開發的遊戲衆多,很多棋牌小企業在用,簡悅的陌陌争霸、食物戰争等等很多産品

pomelo  

網易開源的架構,支援分布式, 周邊完善 

一個用于Node.js的快速,可擴充的分布式遊戲伺服器架構 

https://github.com/NetEase/pomelo   

一花科技等棋牌在用

NoahGameFrame 

幾月c++支援c#/lua,是一個輕量級,快速,可擴充的分布式插件架構,基于Bigworld的思想,可用作MMO RPG / MOBA遊戲旖旎情 

https://github.com/ketoo/NoahGameFrame 

代表做全民無雙

kbengine 

c++和python實作的MMOG遊戲伺服器架構,這個已經被電魂千萬收購 

https://github.com/kbengine/kbengine 

已經被電魂網絡收購

ET 

Unity3d 用戶端c#伺服器架構,支援分布式用戶端伺服器共享代碼 

https://github.com/egametang/ET 

經過産品驗證并且教程比較完善

pitaya 

基于golang,可伸縮的分布式遊戲伺服器架構 

使用的技術比較先進 ETCD實作服務發現 NATS GRPC實作rpc可以docker部署, 國外公司TFG Co 開源項目 

https://github.com/topfreegames/pitaya 

zooba appstroe排行很高的moba、吃雞類遊戲

以上架構自己基本上都運作部署并且了解過大緻的架構結構。

c++類的架構對新手要求較高。node.js類架構性能确實差一些,畢竟它是針對io密集型。

個人使用的是pitaya這套架構。支援分布式使用的技術比較新,經過驗證。其他的就不做評價。

适合自己的才是最好的。