為什麼cocos2dx不封裝一套開源成熟的伺服器端的框架?

例如封裝一些經典的伺服器端的組件,例如libvent,protocol-buffer,mysql,logging, stat 等,弄一個CocosServer出來


伺服器的伸縮性比客戶端大很多。rpg和act類型的客戶端都可以用cocos,但伺服器設計差異那是相當的大,前者需要考慮性能,帶寬和內存;後者更接近於卡牌,用php都可以做。 這點很少在遊戲界看到通用的伺服器引擎

伺服器處理相對客戶端單一:處理數據即可,只要有合適的網路和數據底層就可以。但是就cocos現在的代碼質量和風格看,大有可能是自己封裝socket,這種寫出來的庫,有經驗的伺服器程序員都會選libevent asio等自己來。

再者,cocos本就應該專註跨平台的圖形底層和編輯器。不要期望它代替你做基本的底層封裝。


因為開源成熟的服務端框架太多了。

把這些組件整合起來,本來就是很容易的事情。服務端的需求千奇百怪,分散式部署各有各的方法,作為一個開源遊戲引擎,沒有必要把精力花在這上面。

例如,觸控的一個的團隊已經做了一個伺服器框架出來,基於Openresty+lua,但依然不符合我的需求:dualface/quickserver · GitHub。


我以前也考慮過這個問題,然後在市場上問了一圈,答案是:這個需求很弱,不強烈。

大量頁游、端游轉過來的公司,自己早就有一套成熟的服務端框架了,他們沒有需求和動力去改變,他們需要的只是:原來渲染在pc上、渲染在flash裡面的東西,現在要渲染到手機上。


cocos2d 可以大行其道那是因為出現的新客戶端——手機。並且傳統客戶端引擎暫時不能很好地「適應」這種客戶端。

而相反伺服器領域的解決方案並沒有發生多大變化,甚至有變簡單趨勢。那麼已經積累了這麼多年的服務端技術,自然沒它說話的份。


弱交互的手游產品根本就不需要什麼像樣的伺服器就可打發掉,還費那個勁幹什麼。


觸控官方確實是有一套基於OpenResty開發的QuickServer,只不過沒成氣候。


推薦閱讀:

如何學習寫遊戲AI?
從零開始手敲次世代遊戲引擎(十四)
GMS 中文教程特別篇 #2:GML 編程實踐的經驗與建議
FC遊戲的偽多捲軸

TAG:互聯網 | 遊戲開發 | 遊戲伺服器 | Cocos2d-x |