DevOps研发效能
媒体矩阵
开源中国APP
授权协议 MIT
开发语言 Python
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发游戏开发包
开源组织
地区 国产
投 递 者 大鸡蛋
适用人群 未知
收录时间 2013-08-19

软件简介

Firefly是免费、开源、稳定、快速扩展、能 “热更新”的分布式游戏服务器端框架,采用Python编写,基于Twisted框架开发。它包括了开发框架和数据库缓存服务等各种游戏服务器基础服务,节省大量游戏开发的工作时间,真正做到让使用者把精力放在游戏玩法逻辑上。用它可以搭建自定义的分布式架构,只需要修改相应的配置文件即可。

优势特性

  • 采用单线程多进程架构,支持自定义的分布式架构;

  • 方便的服务器扩展机制,可快速扩展服务器类型和数量;

  • 与客户端采用TCP长连接,无需考虑粘包等问题;

  • 封装数据缓存服务;

  • 可实现实时热更新数据以及游戏逻辑,客户端玩家无感觉;

  • 有几十个基础游戏玩法系统模块提供组装使用(v1.3.0提供);

框架介绍

123.jpg

management, firefly 是个多进程、分布式的游戏服务器。因此各游戏server(进程)的管理和扩展是firefly很重要的部分,框架通过抽象使服务器的扩展非常容易。

Network,客户端连接通信、server进程间的通信等构成了整个游戏框架的脉络,所有游戏流程都构建在这个脉络上。与客户端的通信采用的是请求/回应式的,所以受到的客户端的请求,服务端都会给出相应的回应,服务端也能主动的推送,广播给客户端消息。这些请求是基于指令号的请求。(例如定义101为登陆指令)server进程之间的通信时采用的异步回调的方式,这样就减少了的进程间通过网络通信中的时间消耗。

Data, 数据处理是网游的重要部分。在网游有大量的数据需要存储,需要更新,这使得数据库的读写效率成为服务器的最大的性能瓶颈。firefly的db处理能够将数据库表中的数据缓存到memcache中并能以对象的形式进行调用相应的对象方法对数据进行操作。可以在不同的进程中通过实例化相同的名称的缓存实例,得到同步的数据。并能将缓存对象中的数据写回数据库中。
框架思路

一个最基本的服务器就是一个在不停运行着的应用程序。在分布式游戏服务器中,我们需要的服务器具有的功能有,监听客户端的连接,监听其他服务进程的消息,连接其他的服务进程,有些需要有数据库连接和缓存服务。如下图

234.jpg

net connect 做客户端连接,root监听其他服务进程消息,node连接其他服务进程,db数据库,cache缓存。是否需要监听客户端连接,是否监听其他服务进程消息等这是都是可以在config.json中进行配置。包括各个服务器的名称以及各个服务器之间的连接关系。这样就可以自定义出自己的分布式架构。

Firefly团队:我们或有不足,但我们不停努力!

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(8) 发布并加入讨论🔥
发表了资讯
2015/01/19 00:00

微信社交文字MUD游戏《大主宰OL》完整开源,基于firefly

说明: “大主宰ol”是一款基于微信公众号开发的即时回应式文字mud网游,游戏以著名作家天蚕土豆的最新热门著作《大主宰》为背景改编而成,由9秒社团原创开源。 用户只需在微信公众号游戏平台上根据提示进行互动游戏,即可在阅读最新小说剧情的同时,亲身体验主人公的传奇冒险经历,获得前所未有的全新游戏体验。 只需通过关注微信公众号“大主宰ol”,即可进行游戏,根据提示创建个人账户,丰厚的游戏币、道具即可存储在个人账...

33
64
发表了资讯
2014/12/19 00:00

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

Firefly 的重要迭代版本 GFirefly 已经独立推出并运维了进9个月时间,已有200余家国内各大手机游戏厂商开始陆续使用GFirefly 进行其新手游产品的开发。(2014游戏行业国内最大黑马“龙图游戏”有3款自研产品均使用GFirefly) 鉴于从0.1.2版本开始GFirefly已经基本稳定,本次Firefly官方正式宣布将GFirefly整合进Firefly官方git中。 GFirefly(全称:Firefly-Gevent)是Firefly的Gevent版本,相比之前Firefly版本中所使用的Twist...

6
52
发表了资讯
2014/05/09 00:00

回合RPG网页游戏《烽烟OL》v1.7正式开源

特别声明(务必查看!切!切!切!): 1、本项目开源基于MIT协议,9秒社团开发团队允许任何厂商及个人对其进行修改和商用,并将会在本板块内进行技术问题咨询与解答! 2、我们是服务器端团队,所以客户端如果有您看不过去眼的地方,请咬紧牙关挺住!肚疼找医生,牙疼用医保! 3、《烽烟OL》中的系统与玩法全部开发完成,更换美术后可直接商用,但一切美术资源均由我团队四处拼凑而成,请勿吐槽,谢谢! 4、最后感谢9秒专家组成...

33
113
发表了资讯
2014/04/04 00:00

cocos2dx 手游《口袋仙侠》alpha1.1 完整开源

游戏名称:《口袋仙侠》 游戏类型:横版RTS 游戏版本:Alpha V1.1 服务器框架:Firefly V1.3.1 客户端引擎:Cocos2d-x 2.2.0 服务器运行环境:CentOS 5.0+ 开源时间:2014年4月4日 完整服务器端源码+客户端源码+数据库源码+关卡工具源码+文档 alpha1.1版本新增功能 1.新增了团队界面 2.团队界面里增加了,解锁宠物、宠物上阵功能 3.修正了福利界面领取完奖励之后还会出现的问题 4.福利界面、选择战斗界面、团队界面均添加了返回...

9
110
发表了资讯
2014/03/20 00:00

【重要】基于Gevent的firefly重要迭代版本推出

目前使用者最多的开源游戏服务器端框架Firefly推出了基于Gevent的重要迭代版本,不过目前还处在alpha阶段。Firefly团队使用Gevent完整实现了之前Firefly所依赖twisted内的部分,并还原了api,让使用者可以无需再次学习。 Firefly-gevent 是Firefly的gevent版本。相比之前的Firefly版本使用的Twisted,Gevent更加的精简。 gevent就是一个基于coroutine的python网络开发框架。协程是一种并发模型,但不同于thread和callback,它的...

6
11
发表了资讯
2014/03/19 00:00

cocos2d-x横版动作手游《口袋仙侠》商用版正式开源

【9秒原创】Firefly + cocos2d-x的横版rts手机网游《口袋仙侠》alpha V1.0 商用版本完整源码下载 特别声明: 1、《口袋仙侠》项目基于MIT协议,9秒社团团队允许任何厂商及个人对其进行修改和商用,并将会在本板块内进行技术问题咨询与解答! 2、我们是服务器端团队,所以客户端如果有您看不过去眼的地方,请咬紧牙关挺住!肚疼找医生,牙疼用医保! 3、《口袋仙侠》中的系统与玩法进行持续开发中,更换美术后可直接商用,目前现...

69
184
发表了资讯
2013/12/26 00:00

原创 cocos2d-x 横版手游《打小三》源码下载!

感谢9秒社团的 9秒北京-lonely的mzplay团队~这次开源的手游作品《打小三》是他们无私奉献的产物~~ 这个产品的详细信息如下: 游戏名称:打小三 游戏类型:横版动作类(ACT) 游戏版本:V1.0 服务器端框架:Firefly V1.3.1 客户端引擎:Cocos2d-x 服务器运行环境:Centos 5.0+ 游戏截图: 服务器端源码+客户端源码+数据库 下载: http://down.9miao.com/attachment/tcc/dx3_code.rar Firefly OSC :http://www.oschina.net/p/fi...

14
147
发表了资讯
2013/12/05 00:00

cocos2d-x卡牌手游《暗黑世界》在OSC@Git开源

cocos2d-x + Firefly开发的跨平台卡牌手机游戏《暗黑世界》完整商用最新版,在Git OSChina中完整推出开源下载! 游戏名称:《暗黑世界》 游戏终端:安卓(android) / IOS 游戏类型:卡牌类 游戏版本:V1.6 服务器框架:Firefly Game Server Framework V1.3.0 客户端引擎:Cocos2d-x 2.1.4 服务器运行环境:CentOS 5.0+ 客户端开发环境:Xcode 4.6 开源时间:2013年12月5日 游戏截图: 《暗黑世界》包含系统:注册、登录、创建角...

31
186
发表了资讯
2013/11/26 00:00

开源游戏服务器端框架 Firefly 正式版终于推出

目前国内开发者最多的开源游戏服务器端框架firefly终于终结了beta版本,于2013年11月26日发布了Firefly V1.3.0正式版本,这让开源游戏开发者兴奋异常,本次firefly更新了如下内容: Firefly v1.3.0 正式版本推出 1.3.0 正式版本更新内容如下(2013/11/26) 修复BUG: 1、各个进程间连接失败的问题; 2、dbentrust中进行数据库同步是SQL语句报错的问题; 增加功能: 1、支持服务端多台服务器上分开部署; 以暗黑服务端为例,可以先...

32
78
发表了资讯
2013/10/23 00:00

游戏服务器端框架 Firefly1.2.4 推出,增加http通讯

Firefly CB V1.2.4更新内容如下: 1. 解决网络通信(netconnect)部分的bug,”当网络数据被截断时,后台持续报(some data lose)的错误信息”,修改为,当数据被截断时,被截断的数据会存入到网络数据缓冲器中,当下一条数据到达时在进行处理。 2. 添加了支持客户端http协议连接服务端的方式,并采用异步的方式将response返回给客户端。(详细的http实例教程+源码,点此进入:http://www.9miao.com/thread-44042-1-1.html) 3. 添...

0
30
发表了资讯
2013/09/10 00:00

卡牌手游源码《暗黑世界V1.4》完整源码下载!

游戏名称:《暗黑世界》 游戏终端:安卓(android) / IOS 游戏类型:卡牌类 游戏版本:V1.4 服务器框架:Firefly Game Server Framework V1.2.2 客户端引擎:Cocos2d-x 2.1.4 服务器运行环境:CentOS 5.0+ 客户端开发环境:Xcode 4.6 开源时间:2013年9月2日 截图链接: V1.3版本新增系统:雇用好友(好友间互相雇用)、好友布阵 注:由于是配合Firefly开源服务器端框架推出的,客户端部分开发周期较为紧张,所以客户端代码有不...

3
73
发表了资讯
2013/09/10 00:00

Firefly Close Beta v1.2.3 正式发布

本次为修复更新包,本次更新如下: 1.添加了memcached连接配置的检测; 2.修改了madmin调用new创建一条新的记录是出现的问题; 3.修改了数据存储存盘时报错bug; 下载地址:http://firefly.9miao.com/down/firefly-closebeta-v1.2.3.zip PS:感谢9秒社团的所有成员和广大游戏开发者的支持,自Firefly V1.0发布,到目前仅20多天,我们在firefly官网、9秒firefly官方论坛、泰然网、GameRES、OSchina等9个专区内共完成超过8W次下载...

0
7
发表了资讯
2013/08/27 00:00

卡牌手游《暗黑世界V1.3》商用版正式开源!

开源时间:2013年8月26日 游戏名称:《暗黑世界》 游戏终端:安卓(android) / IOS 游戏类型:卡牌类 游戏版本:V1.3 服务器框架:Firefly Game Server Framework V1.2.2 客户端引擎:Cocos2d-x 2.1.4 服务器运行环境:CentOS 5.0+ 客户端开发环境:Xcode 4.6 V1.3版本所带系统:注册、登录、创建角色、新手剧情、掉落系统、通关副本、使用物品、个人信息系统、卡牌吞噬系统、装备使用、装备吞噬、套装系统、技能系统、布阵系统...

21
147
发表了资讯
2013/08/19 00:00

Firefly alpha beta v1.2.2 正式发布

更新内容: 功能添加 1、动态模块更新 2、部分bug修复 master对服务进程管理的bug dbentrust生成新的记录出错。 动态模块更新功能说明 执行更新的指令:firefly-admin.py reloadmodule 指定服务进程的重新加载模块:在对应服务进程的配置条目中新增“reload”的值,指定重新加载模块的模块名称,如: 需要执行动态更新的时候,可以在app.game.doreload模块中修改你要进行动态更新的内容冲击加载数据,重新加载模块(reload方法)...

19
12
发表了资讯
2013/08/19 00:00

基于Firefly + cocos2d-x的卡牌手游《暗黑世界V1.0》源码开放下载

安卓/IOS跨平台 卡牌手游源码《暗黑世界V1.0》完整商用版,免费提供下载!! 游戏名称:《暗黑世界》 游戏终端:安卓(android) / IOS 游戏类型:卡牌类 游戏版本:V1.0 服务器框架:Firefly Game Server Framework V1.2.2 客户端引擎:Cocos2d-x 2.1.4 服务器运行环境:CentOS 5.0+ 客户端开发环境:Xcode 4.6 开源时间:2013年8月14日 V1.0版本所带系统:注册、登录、创建角色、新手剧情、掉落系统、通关副本、使用物品、个人...

16
160
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
8 评论
576 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部