美文网首页
《江湖X》开发笔谈 - 服务器技术架构

《江湖X》开发笔谈 - 服务器技术架构

作者: 汉家松鼠 | 来源:发表于2016-09-16 09:47 被阅读984次

    作为一个网络游戏,虽然目前游戏内的许多设定我们还在补充,我们抛开江湖X的游戏业务层面的设计,纯介绍一下江湖X的服务器技术框架。
    先简单介绍一下几个核心技术点:

    • 江湖X是一个基于长连接的网络游戏
    • 江湖X运维托管依赖于公有云环境,当然,也可以独立部署
    • 江湖X支持一部分非核心代码的热更新
    • 江湖X的设计目标为同服容纳同时在线数千玩家,容纳百万级玩家信息
    • 能做到10秒级的全服/单个账号精确回档

    再说一下开发基础和选型原因:

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

    下面直接上系统架构图

    20160915125200469.PNG

    解释:

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

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

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

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

    相关文章

      网友评论

          本文标题:《江湖X》开发笔谈 - 服务器技术架构

          本文链接:https://www.haomeiwen.com/subject/efxiettx.html