阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

在线游戏为何青睐云计算?揭秘手游云计算架构部署

  • 2013-10-23
  • 本文字数:1488 字

    阅读完需:约 5 分钟

在线游戏(主要指手游和页游)具有鲜明的行业特点。首先,游戏开发门槛较低,导致游戏数量急剧增长,玩家忠诚度迅速降低,稳定可靠的游戏服务能力成为游戏开发与运营商的立身之本。其次,大多数游戏厂商独立运维的实力较小,随着业务的井喷式发展,对动态快速扩展硬件资源的需求与日俱增。第三,对于相对热门的游戏而言,一般都拥有海量玩家,亟需高并发、高负载的应对措施与方案。第四,游戏开发技术发展迅速,硬件日新月异,游戏画质与可玩性明显改善,低响应延迟是游戏体验的基本需求。最后,同业竞争激烈,安全成为游戏,尤其是热门游戏的命门。

在这种背景下,在线游戏行业面临三个主要挑战:1)需要 IT 系统提供稳定、安全、可靠的游戏服务能力,保证业务的高可用性;2)需要灵活、高可扩展性的游戏架构设计,适应业务发展的突发峰值访问;3)海量用户高并发场景下的低延迟响应要求,以提供流畅的游戏体验。

应对好这三个挑战,将为游戏厂商的成功提供坚实的基础与支撑。本文将从手游的角度讨论合理的在线游戏后端平台架构,并将引入手游行业的知名游戏大掌门应用云计算的架构,帮助优化已有的系统部署。

手游传统架构与云计算架构对比

传统手游架构

在传统手游构设计中,有几个可以改进的地方。游戏运行服务中,应用部署在固定的服务器上,当业务迅速变化时,无法及时动态调整资源来满足;单台云服务器上部署了游戏应用的多个模块,不符合松耦合的部署原则,且容易造成 IO 争抢,影响读写性能;在玩家游戏的高峰时段,游戏更新服务容易因数据分发延迟,形成瓶颈,影响用户体验;游戏更新服务中存在单点配置,一旦其中的一台服务器宕机,可能导致玩家无法更新而不能继续游戏;对架构全局缺少专门的监控与报警机制,存在安全隐患。

大掌门游戏架构图

与传统系统部署架构相比,大掌门应用云计算的架构有以下特点:

  1. 实现应用的松耦合,将 Web/ 应用服务器与缓存、数据库服务等模块解耦,并物理隔离部署,这样能够实现功能模块的水平扩展,同时也避免了云服务器上 IO 争抢带来的性能降低问题。如上图所示,Web Server、Cache Server 及 DB Server 均各自分层,Web Server 组成一个集群,通过负载均衡 SLB 对外提供服务。当业务量迅速变化时,可以通过 API 自动动态向上或向下扩展集群中的云服务器数目。DB Server 搭建主备集群,并定期冷备数据到本地或 OSS 存储。用户也可不必自己搭建缓存和数据库服务,而直接采用阿里云 OCS 和 RDS,这样可以简化系统架构、降低运维成本,并有更高的可靠性。
  2. 在关键路径上,部署主备集群,通过负载均衡服务 SLB 分发并对外提供服务,避免单点故障带来的游戏不可用。游戏更新和运行服务均体现了这一点。
  3. 游戏更新服务可基于阿里云 CDN 提供静态文件分发的低延迟,若游戏中有大量临时文件,包括地图、静态数据分发等,也可以考虑通过 CDN 来保证游戏体验。
  4. 在应用部署的云服务器上,免费开通云盾及云监控,保障游戏不受恶意攻击及病毒、木马等入侵,为游戏稳定运行提供保障。

综上所述,面对游戏行业特点与挑战,基于云服务的架构部署方式完全可以解决传统架构存在的问题与隐患。阿里云的云服务器、RDS 等产品的高可扩展性能力帮助用户实现动态资源配置,以应对业务的剧烈变化;负载均衡帮助用户应对高峰流量、单点故障,提升业务稳定性;云盾、云监控帮助用户保护网络与数据安全,抵御恶性竞争的攻击;多线 BGP 网络、CDN 帮助用户在海量、高并发场景下维持业务的快速响应。

基于以上的优势,做游戏就用云计算开始成为行业标配,比如大掌门、疯狂猜图、小浣熊、游易网络、跃兔、边锋等都是云计算的受益者,他们也将在 2013 阿里云开发者大会上详细展示如何完成“云中游戏”的。

2013-10-23 10:111523
用户头像

发布了 1381 篇内容, 共 618.1 次阅读, 收获喜欢 2451 次。

关注

评论

发布
暂无评论
发现更多内容

微信朋友圈高性能分析

swallowluo

架构训练营 架构实战营 「架构实战营」

Prometheus Exporter (三十一)ProxySQL Exporter

耳东@Erdong

Prometheus 28天写作 exporter 12月日更 ProxySQL

天下武功,无坚不摧,唯快不破

Tiger

28天写作

架构训练营 - 模块二作业

伊静西蒙

给弟弟的信第17封|拒绝自我感觉良好

大菠萝

28天写作

React进阶(九):React-Redux

No Silver Bullet

React React-Redux 12月日更

跟着动画学Go数据结构之希尔排序

宇宙之一粟

golang 希尔排序 12月日更

前端开发:关于Vue组件中的data属性值是函数而不是对象的详解

三掌柜

28t 28天写作 12月日更

微信朋友圈高性能架构分析与设计

皓月

架构实战 #架构实战营 「架构实战营」

LabVIEW图像特征与机器视觉概念(理论篇—4)

不脱发的程序猿

机器视觉 图像处理 工业自动化 图像特征

JavaScript 数组方法 .map() 的 5 个使用场景

devpoint

JavaScript map array 12月日更

如何做一个区块链浏览器

Rayjun

区块链 区块链浏览器

实用机器学习笔记十八:过、欠拟合

打工人!

机器学习 深度学习 算法 学习笔记 12月日更

关于HDFS中的Lease Recovery

Joseph295

Python爬虫反爬,你应该从这篇博客开启,UA反爬,Cookie 特定参数反爬

梦想橡皮擦

12月日更

Cordova应用的JavaScript代码和自定义插件代码的调试

Jerry Wang

JavaScript android 28天写作 12月日更 cordova

Kubernetes + Spring Cloud 集成链路追踪 SkyWalking

zuozewei

链路追踪 性能测试 性能监控 12月日更

模块二:朋友圈

撿破爛ぃ

「架构实战营」

Guava的布隆过滤器

程序员历小冰

算法 布隆过滤器 28天写作 12月日更

2021学习总结

将军-技术演讲力教练

架构实战营 第 4 期 模块二作业

架构实战营 模块二 「架构实战营」

模块七作业——王者荣耀商城异地多活架构设计

deng

架构实战营

在不丢失数据的情况下处理屏幕旋转 - Android

坚果

android 28天写作 12月日更

信贷风控从Model-centric到Data-centric

一直学习一直爽

互联网金融 风控模型 机器学习算法

从对象内存布局了解锁的膨胀

Ayue、

锁升级

王者荣耀商城异地多活架构设计

奔奔

🏆【Alibaba中间件技术系列】「EasyExcel实战案例」实战研究一下EasyExcel如何从指定文件位置进行读取数据

洛神灬殇

EasyExcel Apache POI Alibaba 12月日更

架构实战营模块2课后作业

墨宝

MQTT X v1.7.0 正式发布:MQTT 5.0 支持最为完整的客户端工具

EMQ映云科技

物联网 IoT mqtt

Android ShareSDK 微博分享 (8995)app auth fail for appKey&sign&package 解决

阿策小和尚

28天写作 Android 小菜鸟 12月日更

dart系列之:这里不需要标新立异,dart代码最佳实践

程序那些事

flutter dart 代码规范 程序那些事 12月日更

在线游戏为何青睐云计算?揭秘手游云计算架构部署_语言 & 开发_InfoQ 中文站_InfoQ精选文章