开源游戏服务器端框架Firefly正式将GFirefly整合


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的错误。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部