卡牌类手游解决方案

4G 时代造就了手游行业,而其中卡牌类手游则是国内市场中炙手可热的阵地。 卡牌类手游图形内容非常丰富,要求强大、可伸缩而且稳定的后端服务架构。此手游解决方案提供了优质边界网关协议 (BGP) 路由、专属游戏集群资源、全球化网络布局,和高级手机应用安全防护。

推荐解决方案架构

解决方案描述

  1. 1. 游戏服务端入口处采用负载均衡服务,随着游戏业务量增加,单服承载能力达到上限,随时扩展游戏服数量。负载平衡支持4层TCP/UDP,7层http/https负载均衡,阿里云云服务器(ECS)支持服务自身的纵向升配或弹性伸缩, 结合SLB可以实现基于ECS构建的应用层水平可自动伸缩架构,使得业务具备灵活多样的伸缩能力。
  2. 2. 游戏数据以及平台数据皆采用云数据库服务 RDS版,云数据库 RDS版的主备架构,避免游戏核心数据的单点风险,同时随着业务量的增长数据库可以随时热升级。云数据库 RDS版提供专业的数据库优化建议,包括直观的慢SQL诊断和完整的SQL运行报告,并提供如主键检查、索引检查等多种优化建议,保证客户游戏数据和核心平台系统(如充值,登陆系统)的平稳运行。
  3. 3. 单台云服务器(ECS)游戏服务器内部,平行部署两套运行容器A、B(JAVA开发平台为例,容器为Tomcat),游戏服务器内部署反向代理(如Nginx等),指向容器A。灰度发布代码到B(JAVA开发平台为war包),将反向代理指向B,灰度发布成功,卡牌游戏用户无断线,无感知。若新发布失败,则将反向代理指回容器A,回退成功,卡牌用户无感知。
  4. 4. 也可在阿里云高IO SSD云服务器(ECS)上自建MongoDB等数据库服务,利用ECS SSD磁盘高速稳定的随机读写能力、每秒过百兆吞吐量的存储性能,满足NoSQL数据库的IO需求。同时利用分布式三副本机制,提供稳固的数据可靠性。
  5. 5. 对已安装应用软件包的ECS云服务器,采用自定义镜像、数据盘快照批量创建新服务器,做到快速开服。


解决重大难题

随着国内手游行业与4G时代的兴起,2013年国内卡牌类游戏收入占据了手游总体收入的近一半,成为国内手游市场的主流,2014年动作类重度卡牌手游崛起,2015年卡牌手游进入即时战斗时代。同时卡牌手游也将迎来重度手游的强大挑战。面对汹涌袭来的RPG浪潮,卡牌手游除了玩法创新,对后端服务架构也提出了更高的要求。
针对卡牌游戏的需求和挑战,阿里云提出了以云计算平台为基础的解决方案。该方案具有以下优势:
高磁盘IO
SSD高速云磁盘
由于卡牌类手游服务端会产生并堆积大量玩家日志,并且持久化存储多采用MongoDB、LevelDB等NoSQL非关系型持久化产品,所以对服务器的磁盘IO有更高的要求。
阿里云云服务器(ECS)可以配置高IO SSD云磁盘,拥有高速稳定的随机读写能力,能够完全满足例如海量玩家日志存储的写入性能;利用分布式三副本机制,提供稳固的数据可靠性。
快速部署,灰度发布
快速部署,灰度发布
相对RPG等“重度”手游,卡牌游戏开发周期较短,更容易控制成本。快速的开服、合服、滚服以及数值调整成为卡牌游戏的常态。在多台服务器上频繁的部署和升级对游戏的体验和运维都提出了新的挑战,需要在快速部署的同时做到灰度发布。
阿里云服务器全自助开通、释放,方便的镜像复制和批量操作功能,可以在最短时间内完成环境的部署、以及切换后剩余资源的释放,API操作方式更加适合全自动化运维部署的需要
灵活的带宽计费方式
灵活的带宽计费方式
由于卡牌游戏大部分单区单服或多区一服,所以单台服务器的外网流量成本和峰值较难预估,希望能做到单台服务器流量按量付费。
云服务器(ECS)可以按照固定带宽收费,也可以根据流量按小时计费,可以根据游戏的流量特征灵活选择合适的计费方式。一般说来,在带宽占用率小于30%时,选用按流量计费可以节约更多的流量费用。
单点风险
服务器无单点故障
垂直部署架构面临的典型问题,当单台服务器因各种问题宕机时,将导致至少一组区或服不可用,而宕机恢复时间直接关系到用户体验、财务流水甚至用户留存,而往往受限于开发条件、代码继承、成本等因素,绝大多数游戏还依然坚持着这种部署模式。
基于分布式文件系统构建的云平台,具备高可靠的三份数据冗余存储机制,时时刻刻保障数据的安全性,同时ECS服务器自身拥有自动宕机迁移的能力,可以在故障发生时快速的通过迁移恢复服务,避免游戏服务器的单点故障。
弹性伸缩能力
资源弹性伸缩能力
各种类型游戏基本上都有的共通特性,不确定的玩家在线数量对于服务器的资源配置预估带来了困扰,尤其在游戏刚刚上线的推广期或在线活动等,瞬时的访问压力很容易突破系统负载能力上限,而时刻保持着高配置资源无疑又造成了巨大的资源浪费,所以灵活的自动弹性伸缩能力显得尤为重要。
阿里云包括云服务器(ECS)、云数据库 RDS版在内的多款服务均支持服务自身的纵向变配或横向扩展,结合弹性伸缩服务(ESS)可以实现基于业务负载情况的水平自动伸缩,满足不同业务阶段对资源量动态调整的需求。
phone 联系我们
你好,我是AI助理。
可以解答问题、推荐解决方案等。