关于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 EC2EBSCloudFrontS3等成熟的云服务来扩充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的游戏托管页面:

https://aws.amazon.com/cn/game-hosting/

Camel Games借助AWS在爆发式增长中提供优质游戏体验的更多相关文章

  1. NGK内存爆发式增长,看Baccarat将怎样打造全新的全场景金融生态

    从数字货币抵押借贷业务出发,DeFi已经形成了覆盖全场景的全新金融生态. 可以说,除了信贷等少数对现实世界信息存在较多依赖的实体业务,DeFi已经实现了传统金融业务的全面链上迁移.大多数传统金融行业存 ...

  2. TOP100summit:【分享实录】爆炸式增长的斗鱼架构平台的演进

    本篇文章内容来自2016年TOP100summit斗鱼数据平台部总监吴瑞城的案例分享. 编辑:Cynthia 吴瑞诚:斗鱼数据平台部总监 曾先后就职于淘宝.一号店. 从0到1搭建公司大数据平台.平台规 ...

  3. 彻底弄懂响应式设计中的em和rem

    前一阵子在响应式开发中遇到了em和rem的问题,也上网搜过一些文章,篇幅很长,也没有仔细看,今天来总结一下. rem是指:根元素(root element,html)的字体大小, em是指:父元素的字 ...

  4. 响应式布局中的CSS相对量

    一个响应式布局,要能够根据设备屏幕尺寸的改变,动态的调整页面内容,展现不同的设计风格. 在进行响应式的 CSS 代码编写过程中,经常会用到一些相对尺寸,以达到相对定位的目的.例如,常见的响应式布局中需 ...

  5. 借助python工具从word文件中抽取相关表的定义,最后组装建表语句-非常好

    借助python工具从word文件中抽取表的定义,最后组装建表语句-非常好 --如有转载请以超链接的方式注明原文章出处,谢谢大家.请尊重每一位乐于分享的原创者 1.python脚本 ## -*- co ...

  6. 非抢占式RCU中的一些概念

    该记录着重介绍下:2.6.34版本中非抢占式RCU的基本概念. RCU保护的是指针,因为指针的赋值可以使用原子操作完成: 在非抢占式RCU中: 对于读者,RCU仅需要抢占失效,因此获得读锁和释放读锁分 ...

  7. 渐进式 jpg 和 交错式 gif png 提高图片站体验

    渐进式 jpg 和 交错式 gif png 提高图片站体验= 渐进式的JPG比原始JPG还要小!! 让图片性感的露给你看~google picasa 和 smashing magazine 都有用到搞 ...

  8. 示例 - 25行代码等价实现 - 借助Nodejs在服务端使用jQuery采集17173游戏排行信息

    今天在园子里看到一篇文章: 借助Nodejs在服务端使用jQuery采集17173游戏排行信息 感觉用SS来实现相同功能更加简洁, 于是写了一下, 发现25行代码就搞定了 (包括自动翻页), 于是跟大 ...

  9. 一个RESTful服务,用来定位运行在AWS地区(Region)中的中间层服务

    Eureka 一个RESTful服务,用来定位运行在AWS地区(Region)中的中间层服务.由两个组件组成:Eureka服务器和Eureka客户端.Eureka服务器用作服务注册服务器.Eureka ...

随机推荐

  1. a different object with the same identifier value was already associated with the session解决方案

    org.springframework.orm.hibernate3.HibernateSystemException: a different ]; nested exception ] at or ...

  2. XP下安装IIS的图文教程(无光盘)

    IIS5.1安装文件包下载地址:http://yunpan.cn/QzBZGugw84wEr 安装记录: 1. 将IIS5.1安装文件包解压 2. 开始-->控制面板-->添加/删除程序- ...

  3. 实现把C语言编译成java字节码的编译器 一个将C语言编译成java字节码的实例

  4. strncmp memcmp区别

    内部实现:前者逐每个字符进行比较,并判当前字符是否为0: 后者逐内存块进行比较. 效率:后者自然要优,不论从内部实现上,还是系统优化上. 场景:后者无法替代前者.在项目中遇到一种情况,两个字符串比较, ...

  5. Python_10-异常处理

    目录: 1.1 python标准异常1.2 简介1.3 try语句     1.3.1 使用try和except语句来捕获异常     1.3.2 该种异常处理语法的规则     1.3.3 使用tr ...

  6. EntityFramework 学习资料

    1.EF框架step by step 2.Entity Framework Code First 学习日记 3.[译著]Code First :使用Entity. Framework编程 4.Enti ...

  7. JMeter基础使用方法

    1.修改测试计划名称 2.点击”保存“,并选择保存的路径 3.添加线程组 操作步骤:右击”测试计划“——添加——Threads——线程组 添加成功后,Test1节点下回多出一个“线程组”的节点 4.配 ...

  8. g2o的使用

    相关文献 1.论文 Grisetti, Giorgio, et al. “A tutorial on graph-based SLAM.” IEEE Intelligent Transportatio ...

  9. <<C++标准程序库>>中的STL简单学习笔记

    0. 内容为个人学习笔记, 仅供参考, 如有错漏, 欢迎指正! 1. STL中的所有组件都是由模板构成的, 所以其元素可以是任意型别的. 组件有: - 容器: 管理某类对象的集合. 不同的容器有各自的 ...

  10. ubuntu下学习linux

    ---恢复内容开始--- 查看当前正在运行的进程(ps命令, grep 搜索命令) ps -ef # -e 显示所有进程,环境变量 -f 全格式 也可以用: ps -e -f # 显示所有关于java ...