Camel Games借助AWS在爆发式增长中提供优质游戏体验
关于Camel Games
Camel Games 成立于2009年,是中国首家得到google市场官方认证的顶尖开发公司。长期以来,Camel Games始终依靠于率先的技术背景,致力于成为国际一流的手机网络游戏开发商和运营商,为全球无线增值服务市场提供顶级的手机游戏娱乐产品。眼下。Camel Games共推出了12款Android游戏,当中7款曾获Google推荐,Blow Up,
Space Physics, Roller 等游戏曾位列Android游戏分类排行榜的前三。Roller (Lite)最高获得Amazon总免费榜的第二名。
Shot U! 曾获选Android 2.0系统公布会的游戏典范。
于2012年公布的《小小帝国》是全球首款支持LBS(真实地理位置)的竞技策略社交网游,推出后公司连续数月的月流水收入超过千万。
挑战
Camel Games最初的业务方向是为安卓系统制作单机游戏。随着互联网的飞速发展和智能设备的日渐普及。Camel Games意识到网游具备更大潜力,于是開始转型做网络游戏。在6个人的团队协作下,Camel Games的第一款联机游戏《小小帝国》问世,3D城建加上塔防对战的形式迅速为其积累了大批“粉丝”,原本的server容量几近饱和。
用户的良好反应吸引Google Play特别针对《小小帝国》做了长达一个月的推荐,推荐后的首个星期。全球的玩家数量以每天几万的速度呈现出爆发式增长。导致Camel Game的server一度瘫痪,添加server数量迫在眉睫。这时期的Camel
Games已经拥有二十多个员工,分管着Android开发,iOS开发,美术,策划,运营和行政等方面,在人手方面,Camel Game非常难在短期内安排额外人员进行server的扩充和维护工作。同一时候,因为Camel Game业务正处于由单机游戏向网络游戏过渡的转型期。业务发展的需求对公司在server方面的总体规划(时间成本、费用投入等)提出了更高的要求。Camel Game须要总体对此进行评估,并高速做出决定。
为什么使用AWS
通过对挑战的解读和现有资源的排查。Camel Games觉得借助于现有的。稳定可用的网络资源是针对眼下问题的最佳解决方式。
经过严格的比对,Camel Games终于选定知名的Amazon Web Service(AWS)作为合作伙伴。借助Amazon EC2、EBS、CloudFront、S3等成熟的云服务来扩充server容量并改善用户游戏体验。
与其它网络服务供应商相比,AWS对于Camel Games的优势在于:
灵活的弹性及配置选择
Camel Games选用Amazon EC2和EBS作为游戏server。EC2能够在云中提供大小可调的计算容量,Camel Games能够依据业务需求在几分钟之内添加或降低容量。完美攻克了之前突发的用户数量增长问题。另外,EC2拥有数十种可选配置,能够依据游戏的不同部分进行不同的计算、内存和网络配置。有效提升利用度。EBS能够为 EC2实例提供可用性高、可靠性强且可预測的存储卷,最大化容量弹性。
稳定可靠的储存能力和遍布全球的内容分发网络
Amazon CloudFront和S3被Camel Games 用作资源下载平台。
因为《小小帝国》採用3D效果,游戏图像、视频等资料会占领非常多server空间,Amazon S3 具备高度耐久和高可用性的存储能力。同意整个存储基础设施转移到云端,并利用其扩展性来处理不断增长的存储需求。
同一时候。针对Camel Games用户分散的特点,Amazon CloudFront 提供了遍布全球的内容分发网络 (CDN),不管玩家处于美国、欧洲、亚洲、南美洲或澳大利亚都能通过离其近期的节点下载数据,低延迟地获得游戏更新和内容。
成本可控性和平台高兼容性
从前期的投入到后期的运维,属于创业公司的Camel Games在成本方面均有着非常高的要求。AWS 採取“按需付费”的服务方式。无需前期搭建,仅仅按实际使用的资源收费,有效缩减成本及改善现金流。此外。因为能在短时期内架构基础设施,使用大量资源,AWS 还为Camel Games带来了显著的运营优势。
远程操作节省了大量的人力成本,让团队更专注于自己的核心业务---游戏开发。
同一时候,对于游戏公司而言。平台的选择十分重要。AWS 的云服务提供独立的语言和操作系统,适用于 Java、PHP、Python、Ruby、Node.js 和 .Net 等众多软件开发工具包。针对手游还提供适用于iOS 和 Android 的软件开发工具包。Camel Games能够依据须要同一时候使用Linux, MySQL, Openjdk, Gcc, Redis, Nginx等平台和技术进行游戏开发。
收益
因为AWS的YUM源已经配置好,Camel Games第一次进行完整环境搭建仅仅花费了1天时间。
在后期出现用户数量激增须要开服的情况下,Camel Games会使用AMI进行镜像拷贝,2小时内就能完毕,大大缩短了产品上线时间。
Camel Games的server运营主管易律表示:“作为创业公司,Camel Games对server性能指标的稳定性以及运维的便捷性十分重视。同一时候,价格方案的灵活性也是我们參考的重要因素。使用AWS以来,我们发现最初对云计算的操心全然不是问题。AWS能够非常好地满足我们的业务需求。
如今。Camel Games的全部海外server都在使用AWS,以后也将继续使用。
”
很多其它信息
欲了解很多其它AWS在游戏方面的应用,请參考AWS的游戏托管页面:
Camel Games借助AWS在爆发式增长中提供优质游戏体验的更多相关文章
- NGK内存爆发式增长,看Baccarat将怎样打造全新的全场景金融生态
从数字货币抵押借贷业务出发,DeFi已经形成了覆盖全场景的全新金融生态. 可以说,除了信贷等少数对现实世界信息存在较多依赖的实体业务,DeFi已经实现了传统金融业务的全面链上迁移.大多数传统金融行业存 ...
- TOP100summit:【分享实录】爆炸式增长的斗鱼架构平台的演进
本篇文章内容来自2016年TOP100summit斗鱼数据平台部总监吴瑞城的案例分享. 编辑:Cynthia 吴瑞诚:斗鱼数据平台部总监 曾先后就职于淘宝.一号店. 从0到1搭建公司大数据平台.平台规 ...
- 彻底弄懂响应式设计中的em和rem
前一阵子在响应式开发中遇到了em和rem的问题,也上网搜过一些文章,篇幅很长,也没有仔细看,今天来总结一下. rem是指:根元素(root element,html)的字体大小, em是指:父元素的字 ...
- 响应式布局中的CSS相对量
一个响应式布局,要能够根据设备屏幕尺寸的改变,动态的调整页面内容,展现不同的设计风格. 在进行响应式的 CSS 代码编写过程中,经常会用到一些相对尺寸,以达到相对定位的目的.例如,常见的响应式布局中需 ...
- 借助python工具从word文件中抽取相关表的定义,最后组装建表语句-非常好
借助python工具从word文件中抽取表的定义,最后组装建表语句-非常好 --如有转载请以超链接的方式注明原文章出处,谢谢大家.请尊重每一位乐于分享的原创者 1.python脚本 ## -*- co ...
- 非抢占式RCU中的一些概念
该记录着重介绍下:2.6.34版本中非抢占式RCU的基本概念. RCU保护的是指针,因为指针的赋值可以使用原子操作完成: 在非抢占式RCU中: 对于读者,RCU仅需要抢占失效,因此获得读锁和释放读锁分 ...
- 渐进式 jpg 和 交错式 gif png 提高图片站体验
渐进式 jpg 和 交错式 gif png 提高图片站体验= 渐进式的JPG比原始JPG还要小!! 让图片性感的露给你看~google picasa 和 smashing magazine 都有用到搞 ...
- 示例 - 25行代码等价实现 - 借助Nodejs在服务端使用jQuery采集17173游戏排行信息
今天在园子里看到一篇文章: 借助Nodejs在服务端使用jQuery采集17173游戏排行信息 感觉用SS来实现相同功能更加简洁, 于是写了一下, 发现25行代码就搞定了 (包括自动翻页), 于是跟大 ...
- 一个RESTful服务,用来定位运行在AWS地区(Region)中的中间层服务
Eureka 一个RESTful服务,用来定位运行在AWS地区(Region)中的中间层服务.由两个组件组成:Eureka服务器和Eureka客户端.Eureka服务器用作服务注册服务器.Eureka ...
随机推荐
- 正则表达式在java程序中的使用
package com.boco; import java.util.ArrayList;import java.util.List;import java.util.regex.Matcher;im ...
- Python基础:列表,元组和字典的基本操作
列表(集合list)的基本操作: # 列表的常见操作 nameList = ["张学友", "刘德华", "郭富城", "黎明&q ...
- mybatis中使用懒加载实现一对多复杂查询
1.包结构 2.pom配置 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...
- C++ 重载操作符- 02 重载输入输出操作符
重载输入输出操作符 本篇博客主要介绍两个操作符重载.一个是 <<(输出操作符).一个是 >> (输入操作符) 现在就使用实例来学习:如何重载输入和输出操作符. #include ...
- Python的内建比较函数cmp比较原理剖析-乾颐堂
cmp( x, y):比较2个对象,前者小于后者返回-1,相等则返回0,大于后者返回1. Python的cmp比较函数比较原理 Python的cmp函数可以比较同类型之间,或者不同数据类型之间.然后根 ...
- CentOS 7 更换 阿里云/清华大学 yum 软件源
阿里云参考:https://opsx.alibaba.com/mirror?lang=zh-CN 清华参考:https://mirrors.tuna.tsinghua.edu.cn/help/cent ...
- Jrebel 独立部署tomcat 远程同步项目
一直在用 jrebel 感觉热部署的 功能,修改xml配置文件等,省去了很多的重新启动的时间. 由于偶然间发现 jrebel 还有remote 路由功能.这样,在服务器端用jrebel部署的项目和本地 ...
- MySQL 存储过程 -流程控制的使用
#五.流程控制的使用 #1.IF 使用 create PROCEDURE iftest1() BEGIN DECLARE a int DEFAULT 10; -- IF (a>1 &&a ...
- Word文档如何发CSDN博客
目前大部分的博客作者在写博客这件事情上都会遇到以下3个痛点:1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.2.发布到博客或公众号平台 ...
- chattr命令锁定账户敏感文件
有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux ...