更多

《江湖X》开发笔谈3——服务器技术架构 推荐作品

系统分类: 首页 开发 干货分享

本项目由 汉家松鼠 上传发表,如其侵犯了您的合法权益请联系我们!

广东省 / 独立游戏开发小组
2016-10-5 15:08:13

马上注册,结交更多的独立开发者,享用更多功能,让你轻松玩转INDIECN

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 汉家松鼠 于 2016-10-5 15:27 编辑

作为一个网络游戏,虽然目前游戏内的许多设定我们还在补充,我们抛开江湖X的游戏业务层面的设计,纯介绍一下江湖X的服务器技术框架。
先简单介绍一下几个核心技术点:
  • 江湖X是一个基于长连接的网络游戏
  • 江湖X运维托管依赖于公有云环境,当然,也可以独立部署
  • 江湖X支持一部分非核心代码的热更新
  • 江湖X的设计目标为同服容纳同时在线数千玩家,容纳百万级玩家信息
  • 能做到10秒级的全服/单个账号精确回档

再说一下开发基础和选型原因:
我们工作室人丁稀少,而且也非纯技术向定位(我们都一起做策划、运营、运维甚至是美工、音乐啦)……之前也没有游戏行业的代码积累,所以我们大部分东东能用开源的就用,能用付费的也用。一切的核心为的是提高生产效率、降低工作量、并且提高运维稳定性,当然,也在一定程度上考虑了未来的可扩展性。
下面直接上系统架构图

2282135-65a387aa7f1ebc47.png


解释:
  • 账号服务器是全局唯一的,一个账号可以登录我们所有的游戏服务器。主要账号登录信息、支付信息、账号登录TOKEN(判断同一账号是否重复登录),采用J2EE开发
  • 游戏服务器使用SCUT编写,与客户端之间通信采用socket长连接,使用C#开发
  • 数据库使用的redis+mysql,所有登录激活的账号才会进入redis,否则数据序列化存在持久化存储里。
  • 数据库使用公有云提供的高可用方案,秒级落盘。所以可以做到秒级回档。
  • WEB服务器挂接了CDN,提供游戏下载、各种活动页面、服务器列表、公告发布等等
  • 聊天、统计和第三方登录/支付、短信服务 均属于外部系统,直接使用的云服务。
  • 客服/GM系统是我们管理员的操作后台,采用PHP编写
  • 公有云我们目前使用阿里云和UCLOUD
  • 聊天服务器使用亲加云通讯
  • 第三方登录/支付包括 支付宝、微信、苹果等
  • 短信服务使用的容联云通讯
  • 统计服务使用的友盟
  • 账号服务器、数据库等均外网隔离
  • 游戏服务器、WEB服务器等均使用云服务器提供的防火墙,并且做了一系列的安全方案

根据测试情况和目前的运营情况,若干结论性的东东分享:

  • SCUT服务端还算稳定,可用。代码没问题的情况下,同一个实例支持几千并发应该比较轻松。
  • redis很强大,但是要注意控制其内存
  • 阿里云服务器的磁盘读写性能很差
  • CDN未必可靠,需要程序支持备份切换方案
  • 目前的公有云环境确实是高可用,基本没有出过什么问题

我接下来的文章将深入到具体的每个模块和逻辑讨论技术细节,有兴趣的同学欢迎与我交流。

热度
1144
浏览:1144次 收藏:0次 评论:2次
喜欢:1

广东省 / 独立游戏开发小组
2016-10-5 15:08:13 发布

您需要登录后才可以回复 登录 | 立即注册

本版积分规则

全部评论(0)

快速回复 返回顶部 返回干货分享