leafc 游戏服务器框架架怎么样

产品与方案汇总
数据中心网络架构解决方案
业务挑战:
OTT行业当前网络架构层面遇到的挑战总体上分为四个方面:
& 多IDC的建设与扩展&&随着企业业务规模的变大以及用户体验的要求,原有单数据中心根本无法满足业务的需要,在全国各地建设多个数据中心更加能满足客户的体验要求,但多点资源部署面临着众多的挑战
&&网络规模的壮大&&云计算,物联网以及大数据的到来,给对网络容量,性能规模带来了挑战
&&基础架构的快速部署&&互联网公司业务呈弹性分布,对应用敏捷迭代,小步快跑的特征给基础架构的部署带来挑战,业务上线的周期与市场占领以及公司的盈利挂钩
&&业务的灵活迁移&&互联网公司的私有云以及公有云平台战略使得业务资源池化,具备高弹性以及灵活性的特征,大数据的BI促进了业务资源的灵活迁移和调度
解决方案描述:
多业务骨干承载网
OTT企业直接通过公有的AS与ISP通过BGP进行对等接入,对于OTT企业多业务类型的需求可以通过MPLS VPN承载网的VRF对多业务平面的虚拟隔离实现,与多种运营商的对等互联能满足不同ISP用户的访问体验和需求。
基于Leaf-Spine/Fat Tree的数据中心网络架构
&leaf-spine架构&也称为分布式核心网络,核心节点包括两种:第一种leaf叶节点负责连接服务器和网络设备;第二种spine针节点连接交换机,保证节点内的任意两个端口之间提供延迟非常低的无阻塞性能,从而实现3级CLOS网络。通过一定的端口收敛比/超配比可以满足数万台服务器的线速转发。
解决方案价值:
华讯管理云即时验证产品序列号、查询生命周期,降低企业网络运行风险。加入华讯和谐生动的人力资源环境,广阔多元的发展空间
上海陆家嘴办公室
上海东银中心办公室
南京办事处
TEL: 025-
杭州办事处
北京银泰中心办公室
TEL: 010-
北京首东国际办公室
济南办事处
西安办事处
深圳福田办公室
广州办事处
TEL: 020-
厦门办事处
TEL: -92020
福州办事处
成都分公司
TEL: 028-
重庆分公司
昆明办事处
武汉办事处
香港办事处Leaf 是一个使用 Go 语言开发的开源游戏服务器框架,注重运行效率并追求极致的开发效率。Leaf 适用于几乎所有的游戏类型。其主要的特性:良好的使用体验。Leaf 总是尽可能的提供简洁和易用的接口,尽可能的提升开发的效率稳定性。Leaf 总是尽可能的恢复运行过程中的错误,避免崩溃多核支持。Leaf 通过模块机制和 leaf/go 尽可能的利用多核资源,同时又尽量避免各种副作用良好的模块支持。一个 Leaf 开发的游戏服务器由多个模块组成(例如 LeafServer),模块有以下特点:每个模块运行在一个单独的 goroutine 中模块间通过一套轻量的 RPC 机制通讯(leaf/chanrpc)Leaf 不建议在游戏服务器中设计过多的模块。游戏服务器在启动时进行模块的注册,例如:leaf.Run(
game.Module,
gate.Module,
login.Module,)这里按顺序注册了 game、gate、login 三个模块。每个模块都需要实现接口:type Module interface {
OnDestroy()
Run(closeSig chan bool)}Leaf 首先会在同一个 goroutine 中按模块注册顺序执行模块的 OnInit 方法,等到所有模块 OnInit 方法执行完成后则为每一个模块启动一个 goroutine 并执行模块的 Run 方法。最后,游戏服务器关闭时(Ctrl + C 关闭游戏服务器)将按模块注册相反顺序在同一个 goroutine 中执行模块的 OnDestroy 方法。Leaf 源码概览leaf/chanrpc 提供了一套基于 channel 的 RPC 机制,用于游戏服务器模块间通讯leaf/db 数据库相关,目前支持 MongoDBleaf/gate 网关模块,负责游戏客户端的接入leaf/go 用于创建能够被 Leaf 管理的 goroutineleaf/log 日志相关leaf/network 网络相关,使用 TCP 协议,可自定义消息格式,目前 Leaf 提供了基于 protobuf 和 JSON 的消息格式leaf/recordfile 用于管理游戏数据leaf/timer 定时器相关leaf/util 辅助库使用 Leaf 开发游戏服务器LeafServer 是一个基于 Leaf 开发的游戏服务器,我们以 LeafServer 作为起点。获取 LeafServer:git clone /name5566/leafserver设置 leafserver 目录到 GOPATH 后获取相关依赖:go /name5566/leafgo /golang/protobuf/protogo get gopkg.in/mgo.v2编译 LeafServer:go install server如果一切顺利,运行 server 你可以获得以下输出: 22:11:27 [release] Leaf starting up敲击 Ctrl + C 关闭游戏服务器,服务器正常关闭输出: 22:12:30 [release] Leaf closing down (signal: interrupt)==== OSC 职位推荐 ====坐标:上海 公司:驴妈妈H5前端开发工程师
?15K-25KAndroid开发工程师
?15K-18K更多职位请登录:job.oschina.net开源中国(gh_7e) 
 文章为作者独立观点,不代表大不六文章网立场
gh_7eOSChina 开源中国 官方微信账号热门文章最新文章gh_7eOSChina 开源中国 官方微信账号&&&&违法和不良信息举报电话:183-
举报邮箱:
Copyright(C)2016 大不六文章网
京公网安备78}

我要回帖

更多关于 开源游戏服务器框架 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信