開源游戲服務器端框架Firefly正式將GFirefly整合!

jopen 9年前發布 | 11K 次閱讀 Firefly

Firefly 的重要迭代版本 GFirefly 已經獨立推出并運維了進9個月時間,已有200余家國內各大手機游戲廠商開始陸續使用GFirefly 進行其新手游產品的開發。(2014游戲行業國內最大黑馬“龍圖游戲”有3款自研產品均使用GFirefly)

鑒于從0.1.2版本開始GFirefly已經基本穩定,本次Firefly官方正式宣布將GFirefly整合進Firefly官方git中。

GFirefly(全稱:Firefly-Gevent)是Firefly的Gevent版本,相比之前Firefly版本中所使用的Twisted,Gevent更加的精簡和高效。

GFirefly結合了Gevent的性能,封裝了網絡IO處理、數據庫IO讀寫緩存、分布式進程間接口調用,這樣使得游戲server端的開發變得既輕松簡單又穩定高效。開發者不必在去糾結處理這些技術難題,專心致力于游戲玩法邏輯的開發即可。

與之前的Firefly相比,GFirefly省略了遠程調用過程中添加回調函數callback的步驟。

你可以這樣去寫遠程調用的方法:

result = root.callChild("test_node",1,u'Root測試')

#這里不會阻塞的,在結果返回之前會執行別的協程

print result

#當結果返回的時候會繼續往下執行

此次更新的GFirefly alpha 0.1.5做了如下的改進:

1、  單node節點斷開與root節點的連接后自動重連。

2、  修改了GFirefly的底層庫GTiwsted(Firefly官方自研),將socket發送數據放到一個協程中進處理。在發送數據的時候,會將發送的數據放到一個隊列中有發送數據的協程讀取發送,解決了

AssertionError: This socket is already used by another greenlet 的錯誤。

Firefly Git地址(內含gfirefly):https://github.com/9miao/Firefly

GFirefly獨立Git地址:https://github.com/9miao/G-Firefly

GTwisted獨立Git地址:https://github.com/9miao/gtwisted

Firefly官方維護團隊:9秒社團

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!