云场景实践研究第52期:畅游

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 混合云在安全上有很重要的优势,阿里安全体系很健全,混合云模式既保证了用户线下的场景核心需求,同时依托阿里安全防护体系,将安全堡垒又加固了一层,混合云可能比常规的云上云下打通更实际,优势更明显。借助阿里云提供的混合云解决方案,畅游在游戏的维护成本等各方面都有很大的进步,其故障修复和应用上线的时间速度提升几十倍甚至上百倍。

更多云场景实践研究案例,点击这里:【云场景实践研究合集】联合不是简单的加法,而是无限的生态,谁会是下一个独角兽

畅游在手游和端游方面做了很长时间,在游戏运维方面也积累了十几年的经验。而畅游对于混合云来讲有很明确的要求:第一,托管物理IDC质量一定要过硬,第二,云上云下一定要有大带宽,高稳定高可用的链路打通。在前端,混合云在安全上有很重要的优势,阿里安全体系很健全,混合云模式既保证了用户线下的场景核心需求,同时依托阿里安全防护体系,将安全堡垒又加固了一层,混合云可能比常规的云上云下打通更实际,优势更明显。借助阿里云提供的混合云解决方案,畅游在游戏的维护成本等各方面都有很大的进步,其故障修复和应用上线的时间速度提升几十倍甚至上百倍。

“开始使用云是比较便利的,维护成本和各方面都有很大的进步,我们的故障修复、应用上线的时间速度提升几十倍甚至上百倍。在手游井喷式的发展时,考虑资源上手游时,我们优先考虑了公有云,使用了阿里云的所有服务,目前,我们的很多业务基本都在云上跑。”

——黎志刚

畅游运维部总监


采用的阿里云产品

  • 阿里云数据库 RDS
  • 阿里云对象存储 OSS
  • 阿里云容器服务

为什么使用阿里云

游戏的开发和版本以及应用程序特殊性很多,导致它对云上的操作系统、驱动和特殊配置上要求和其他应用不一样,这样对云的要求会更苛刻一些,不同游戏版本和类型对公有云的要求都是不一样的。

畅游与阿里云合作做端游的过程中,对一个产品的老操作系统版本进行一个改造,操作系统太老导致应用程序无法在云上拉写,新版本操作系统应用又搭建不起来,对此,阿里云为畅游定制了一个操作系统版本。

借助阿里云,畅游在服务器运维方面可以实现分钟级甚至秒级切换。


关于 畅游

畅游有限公司是中国领先的在线游戏开发和运营商,于2007年12月分拆成为一家独立运营公司。在此之前畅游作为搜狐集团的游戏事业部从2003年起开始运营大型多人在线角色扮演游戏(MMORPG)业务,随后于2009年4月在纳斯达克全球精选市场上市。畅游目前运营中国最受欢迎的大型多人在线角色扮演游戏之一的《天龙八部OL》,游戏用户数量和收入保持着强劲的增长。畅游领先的技术平台包括先进的2.5D图形引擎、统一的游戏开发平台、有效的反作弊和反黑客技术、自主研发的跨网络技术和先进的数据保护技术等。


为什么选择阿里云?

畅游的上云历程

游戏上云和其他行业上云最大的不同在于:游戏的开发和版本以及应用程序特殊性很多,导致它对云上的操作系统、驱动和特殊配置上要求和其他应用不一样,这样对云的要求会更苛刻一些,不同游戏版本和类型对公有云的要求都是不一样的。畅游与阿里云合作做端游的过程中,对一个产品的老操作系统版本进行一个改造,操作系统太老导致应用程序无法在云上拉写,新版本操作系统应用又搭建不起来,对此,阿里云为畅游定制了一个操作系统版本。开始使用云是比较便利的,维护成本和各方面都有很大的进步,畅游的故障修复、应用上线的时间速度提升几十倍甚至上百倍。在手游井喷式的发展时,考虑资源上手游时,畅游优先考虑了公有云,使用了阿里云的所有服务,目前,畅游的很多业务基本都在云上跑。


畅游的数据库架构设计

畅游之所以偏爱阿里云RDS,这与游戏架构演变有关。最开始DB和应用都放在一台机器上或两台机器上进行交互,数据的一致性和档案的完整性都会有问题, 使用阿里云以后发现,不管是从网络层、数据的交互上都提供了一整套的解决方案,Redis可以实现memory cache实现不了的功能,这个程序被应用的场景远远多于自己写的memory cache,Redis要经过各种应用的验证,Redis的健壮性和冗余性各方面都会比memory cache更强,这时候就会更倾向使用Redis服务。

畅游使用MySQL比较多,SQL server和MongoDB也有一些,畅游做了那么多年游戏,有了自己的一套MySQL配置标准,畅游对于数据库版本的各种参数都做了优化,能够支持公司内所有游戏的运行,这个版本也放在了阿里云实例中直接使用。畅游的其他游戏可能也会定制数据库,要求必须是某个版本某个数据类型,会与研发商技术团队沟通调整,我们会遵循研发商的意见。

SQL server数据库主要针对存储过程和SQL语句做一些优化,上线过程中可能会遇到某个存储过程和SQL语句处理时间很长,导致访问效率很慢,就需要对SQL server了解的人排障时候能够快速定位到问题,畅游在用MySQL的排障方式也可以去做,由于两个数据库操作模式不同,导致排障时间不一样。不同地区游戏能对研发商选择的操作系统和数据库的版本,在引入时都需要和研发商进行交流。

关于选择,主要看游戏的类型,如果是端游,畅游会优先考虑天龙验证过的MySQL,如果是web应用或手游等,畅游则会直接使用阿里云提供的服务。国内游戏行业的DB有几种类型,SQL server、MySQL和MongoDB以及自建数据库。从协同开发角度讲,在做一款项目时,他所能控制的在经验范围内,数据库有多大的并发写入量,数据块写入多少,能够有很精准的度量,如果用全新的技术,可能就会超出控制范围。阿里云RDS从设计第一天,就把高可用放在第一位,第二位是数据的可靠性,RDS已经完全可以满足游戏行业的需求,像局域缓存场景的Redis和memory cache,阿里云也打造了高规格实例,能够满足很重度的游戏需求。


畅游业务架构及运维实践

c7a01bcd2039389ec335297d4ddaf53423642cbd

畅游业务架构从最开始基础的C/S架构,向可以进行负载均衡的架构,把很多的应用功能进行切分,比如登录、场景和验证,支付、资源都切成不同的服务器,这样服务架构相对来说就比较健壮了。上阿里云以后,有备机可能分钟级、秒级就可以切换,没有备机十分钟内也可以解决;有Redis后,数据档案的完整性会得到很大提升。

为了让档案数据不丢失,网络抖动各方面影响较少,游戏设计时在中间层数据库和应用之间做了一层缓存memorycache,这套东西可以保证所有数据交互时不出现丢失,可以解决高并发问题。手游现在基本都是负载均衡,如果遇到高并发,可以在负载均衡做更多事情。以前单个机房防御可能只做到10G,当使用到云上后,防御的整个带宽可以达到300G。

而未来,阿里云海外战略目标是要将数据中心铺到全球,从北美、东南亚到欧洲,已经上线了多个数据中心,另外一个很重要的技术特征是,有规划将数据中心通过高速通道打通,包括国内区域的跨城专线,包括国内到海外的国际专线,这种打通就解决了做全球同服时技术资源的联通性上的基础条件,全球同服对游戏类型有要求,比如SLG、棋牌以及卡牌,随着未来游戏行业在海外战略的发展,这一类项目会越来越多,阿里云希望在项目大爆发之前,将基础条件打造好,为了方便未来项目更好在云上构建。


畅游自动化运维平台

过去五六年,畅游一直想做运维自动化,最终形成了一整套完备的运维操作平台。一方面是游戏运维自动化,游戏版本的发布、上线更新维护自动化;一方面将所有的资产信息做了数据总线,构建了一套CMDB系统,该系统会将线上所有的资产信息全部在库里建好,打上标签,所有运维需要的工具、脚本和系统都经过这条总线,假如线上应用进行变更时,也是在这里先更改。 畅游也做了版本发布平台,所有在服务器上运行的脚本,全部在这里登记,由系统自动发布出去,这样可以将所有服务器执行上的风险降低。出现问题时系统自动呼叫运维人员。

将IT成本中心变成利润中心,今天畅游的体系已经非常成熟了,畅游也希望将自己的东西提炼成开源的架构,让同行的所有人都来参与调优,参与的人越多,对框架调优就越好。第一,先将畅游的东西模块化、产品化;第二,将整个的运维行业人才培养计划也开放出来。

466dbbaf463dc2b2d480d6490f19e273c0654659


畅游对于容器服务的探索

同时,畅游对容器服务也做了探索。Docker兴起时,畅游结合其他公司经验做了很适合资深业务的容器,优先解决业务遇到的问题,这时在容器上可以跟研发团队核心生产环境做流程的打通,研发写完后直接上传到目录,由系统自动同步到预发布环境,在预发布环境可以看到是否OK。畅游的Docker容器技术大量借鉴Docker社区和开源东西,但是定制化的东西想要通用使用还是有难度的,所以畅游想与阿里合作使用Docker容器。阿里容器服务第一是解决兼容性问题,会支持本地化部署,将线下东西和线上实例打通,在线下垂直环境、预发环境能够跑通的程序代码,可以一键直接发布到云平台,实现整个持续交付能力;第二,阿里与Docker已经做很深度的战略合作,未来会在Docker容器化领域持续发展,很有可能专门出些针对游戏行业的容器化服务。

关于畅游的更多实践详情:畅游:游戏运维最佳实践
原文发布日期:2017-03-12
云栖社区场景研究小组成员:贾子甲,仲浩。

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
监控 BI 分布式数据库
云场景实践研究第81期:大搜车
2017云栖大会HBase专场,大搜车高级数据架构师申玉宝带来阿里云云数据库HBase在大搜车金融业务中的应用实践。本文主要从数据大屏开始谈起,进而分享了GPS风控实践,包括架构、聚集分析等,最后还分享了流式数据统计,包括数据流、数据合流和服务监控等。
2005 0
|
存储 弹性计算 安全
云场景实践研究第80期:华大基因
作为全球最大的基因组学研究中心,华大基因在阿里云的帮助下,实现了海量数据的及时获取、快速分析、安全储存。本文将带领大家一同了解华大基因的基于大数据分析的云计算实践之路。
4350 1
|
新零售 安全 大数据
云场景实践研究第71期:云集微店
11.11全球精品狂欢节的首日,云集微店用日PV过两亿、每秒钟最大并发6万、日销售额超过2亿的惊人数据,展现了新零售的巨大爆发力。从一台服务器到日PV过2亿,一家从一个程序员起步的创业公司,其系统架构如何极速成长以匹配业务的发展?本文介绍了社交电商云集微店的云上架构的挑战、阵痛与成长。
2438 0
|
存储 分布式计算 安全
云场景实践研究第84期:东润环能
让东润环能选择阿里云的原因,除了阿里云强大的云平台能力之外,还有阿里云数加MaxCompute的全方位服务能力及其稳定安全的表现。最重要的是采用阿里云数加,东润环能可以将所有精力都放在业务上,节省了自建机房在学习成本、开发成本、管理成本、投入机房资源和运维成本的总成本,将更多的精力和成本投入到业务方面。
2297 0
|
人工智能 运维 大数据
云场景实践研究第59期:饿了么
饿了么日订单从几十万增长到一百万,又从一百万增长到三百万,接着到2016年圣诞节的九百万。至今天,其订单量仅次于淘宝和滴滴,与美团不相上下。亮眼数字背后,技术团队背负的技术压力可想而知。作为创业公司,时间对饿了么来说更为宝贵,尤其是还处在一个业务快速上升期的创业公司。
3152 0
|
安全 NoSQL 大数据
云场景实践研究第51期:趣店
对于像趣店这样的创业团队而言,由于成本问题,自建IDC显然是不现实的,所以趣店在创业之初就选择了上云。如今,趣店对于阿里云存在着深度依赖的关系,只要有需求一来,技术团队首先会去思考阿里云有没有这样的服务,这样的方式帮助趣店将精力集中在自己的业务本身,使得产品能够迅速得以迭代。
2088 0
|
数据采集 分布式计算 算法
云场景实践研究第57期:明源云
本文中,明源云分享了整个的地产行业在阿里云大数据平台上的探索应用实践。自定义构建设计企业内部数据管理平台DMP平台,并通过应用场景诠释了大数据在地产行业的作用。
2122 0
|
新零售 分布式计算 监控
云场景实践研究第40期:网聚宝
作为阿里云的深度用户,网聚宝的成长和阿里云的成长已经深深交织在了一起,在公开的5个产品技术上总投入资源大约是同类产品的1/5。作为一个中小规模的技术团队,客户已有3000多家品牌。本文将详细解读网聚宝在使用阿里云产品4年的过程中,基于云计算的架构心得。
1966 0
|
安全 云计算 CDN
云场景实践研究第33期:神州优车
神州优车已经使用了阿里云的ECS以及OSS服务以及CDN等非常多的云产品,并且实现了稳定的私有云与阿里云的混合云架构,阿里云在效率质量与成本上的高性价比也为神州优车带来了较高的收益与很好的口碑。
1556 0