普华永道最近的一份报告指出,全球游戏行业是过去几年经历显着增长的行业之一,到 2026 年该行业(不包括电子竞技)的价值有望达到 3210 亿美元。过去仅三年时间,该行业就增加了 5 亿玩家,全球玩家总数达到 27 亿。

游戏玩家寻求丰富的体验,随着游戏行业的进一步发展,游戏玩家的期望正在逐渐提高,我们可以看到游戏玩家对顶尖的动画、身临其境的游戏情节以及对100%运行时间的要求,这些对游戏公司而言无疑是个挑战。

Cloud Ace是亚太地区拥有最多据点的Google Cloud经销商,拥有200多名工程师,是谷歌最高级别合作伙伴,多次获得Google Cloud合作伙伴奖。

作为谷歌托管服务商,我们提供谷歌云、谷歌地图、谷歌Workspace、谷歌云认证培训服务。

 1  选择正确数据库的重要性

创建一个高度交互的多人游戏并不容易。游戏需要确保高正常运行时间、低延迟、按需扩展的能力以及跨地理位置的一致体验。它还需要支持复杂的工作流程。

不管是什么游戏,都需要考虑大量的设计挑战和限制,例如为为数百万需要实时体验的玩家进行容量预测。

在这一切之中是一个关键问题:什么数据库将解决分布式系统的许多挑战?数据库能否提高零停机时间”服务?能否自动扩展?能否避免超时读取?能否减少运营和维护成本?

无论游戏的规模大小,选择正确的数据库是畅销游戏成功的关键驱动力之一。

 2  为什么 Spanner 是支持游戏的最佳选择?

Spanner 可以解决分布式事务的许多挑战。作为一个完全托管的、全球分布的、强一致的、具有无限规模的关系型数据库,Spanner 专为云而构建,将关系型数据库结构的优势与非关系型横向扩展相结合。Spanner 在峰值时每秒处理超过 20 亿个请求,没有任何停机时间或维护窗口。

Spanner 可轻松处理大量意外工作负载,让您专注于游戏。游戏开发人员面临的最大痛点之一是构建一个可以响应工作负载突然变化的分布式系统。任何游戏公司的一个主要问题是可扩展性:如果他们的游戏在全球流行,他们的基础设施必须能够响应突然的、难以置信的需求,同时保持一致的游戏玩家体验和运营稳定性。由于 Spanner 自动处理复制、分片和事务处理,您的游戏可以根据需要快速扩展以满足任何不可预见或尖峰的使用模式。通过使用 Spanner,您可以真正享受到关系语义(Google 标准 SQL 和 PostgreSQL 方言数据库)的所有优势以及无限的横向扩展,并让您的团队专注于最重要的事情:游戏本身。

Spanner 可以为全球游戏玩家提供支持,并为他们提供一致的体验。Spanner 能够为客户提供最严格的事务并发控制保证,从而使游戏公司能够保持设计模式的简单性。事实上,通过使用 Spanner,您可以将时间和精力集中在解决游戏开发的难题上,而不是维护数据库。

Spanner 在游戏垂直领域的用例是无穷无尽的。Spanner 可以提供广泛的数据库管理功能,包括:

  • 验证和授权玩家的个人资料;

  • 从游戏客户端、服务器和其他应用程序创建各种有状态的摄取工作流;

  • 管理用户、库存和配置文件;

  • 实施游戏内购买和排行榜;

  • 存储并快速提供玩家数据

3   Spanner 的3个重要功能

高可用性:Spanner 具有令人难以置信的高可用性和延迟保证,这使得在 Spanner 之上构建可靠的应用程序变得更加简单。Spanner 提供事务写入支持,为多区域实例提供高健壮性保证和业界领先的 99.999% 可用性。这种高可用性意味着不需要围绕 SLA 进行设计。

备份和恢复管理:Spanner 的备份管理易于配置,并提供时间点恢复以提供简化的业务连续性。备份被设计为不会对服务流量产生任何影响。Spanner 还提供时间点恢复,使数据修复和单个行、表和整个数据库的恢复变得简单,这在每天处理数千或数百万个事务时非常有用。

免费入门:Spanner 免费试用实例可让您在 90 天内免费学习和探索 Spanner。一旦您确定 Spanner 是合适的数据库,您就可以根据需要无限制地扩展,并且只需为您使用的计算容量和存储付费。此外,您不需要为游戏发布过度配置,您可以使用 Autoscaler 来管理您的 Spanner 利用率。

为什么游戏公司应该选择 Cloud Spanner 来支持他们的游戏?的更多相关文章

  1. Gamescom2014:中国游戏公司37.com进军西方海外市场

    在2014年的德国科隆国际游戏展上.Xsolla曾与37.com聊天.我们讨论了中国公司眼下进军西方市场的战略,谈到营销的最有效方法.游戏货币化,并讨论在欧洲和土耳其的网页游戏的前景. 37wan 能 ...

  2. 为什么游戏公司的server不愿意微服务化?

    背景介绍 笔者最近去面试了家游戏公司(有上市).我问他,公司有没有做微服务架构的打算及考量?他很惊讶的,我没听说过微服务耶,你可以解释一下吗? 我大概说了,方便测试,方便维护,方便升级,服务之间松耦合 ...

  3. [Unity3D]上海某大型游戏公司的基础面试题

    一个小老乡跟我聊到去上海某大公司的基础面试题,面试结果不尽如人意,但还是分享了下面试的试题,刚刚第一次录制视频,给某人讲课,我感觉讲的还算比较耐心,但发现一些新手入门学习的弊端,可能是很普遍的现象,这 ...

  4. (NO.00005)iOS实现炸弹人游戏(二):素材选择的取舍

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 前面一篇里我们基本明确了游戏的大致玩法和特点.下面就游戏中会用到 ...

  5. 开发H5游戏引擎的选择:Egret或Laya?

    开发H5游戏引擎的选择:Egret或Laya? 一.总结 一句话总结:选laya吧 二.开发H5游戏引擎的选择:Egret或Laya? 一.H5游戏开发的引擎介绍 开发H5游戏的引擎有很多,比如egr ...

  6. HTML5 游戏引擎的选择

    原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场或将成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折.如何选择适合团队和项目的引擎,笔者通过学习和项目实 ...

  7. 我的Android进阶之旅------>Android疯狂连连看游戏的实现之加载界面图片和实现游戏Activity(四)

    正如在<我的Android进阶之旅------>Android疯狂连连看游戏的实现之状态数据模型(三)>一文中看到的,在AbstractBoard的代码中,当程序需要创建N个Piec ...

  8. 第1章 游戏之乐——NIM(3)两堆石头的游戏

    NIM(3)两堆石头的游戏 1. 问题描述 假设有两堆石头,有两个玩家会根据如下的规则轮流取石头:每人每次可以从两堆石头中各取出数量相等的石头,或者仅从一堆石头中取出任意数量的石头:最后把剩下的石头一 ...

  9. cocos2d-x游戏开发实战原创视频讲座系列1之2048游戏开发

     cocos2d-x游戏开发实战原创视频讲座系列1之2048游戏开发 的产生 视持续更新中.... 视频存放地址例如以下:http://ipd.pps.tv/user/1058663622     ...

  10. Cocos2dx游戏开发系列笔记13:一个横版拳击游戏Demo完结篇

    懒骨头(http://blog.csdn.net/iamlazybone QQ:124774397 ) 写下这些东西的同时 旁边放了两部电影 周星驰的<还魂夜> 甄子丹的<特殊身份& ...

随机推荐

  1. java中的垃圾回收算法与垃圾回收器

    常用的垃圾回收算法 标记-清除 标记清除算法是一种非移动式的回收算法,分为标记 清除 2个阶段,简而言之就是先标记出需要回收的对象,标记完成后再回收掉所有标记的内存对象,如下图 可见回收后图中被标记的 ...

  2. vs 自定义代码块

    代码自动生成,让代码飞~ 我目前用的是vs2013,c,c++用的多,vs自带了一套代码块规则,下面我们就以for举例子. 1 原生代码块怎么使用 输入for后按Tab键: 这时候可以修改 size_ ...

  3. TDSQL-C 真·秒级启停:连接断了,又没断

    你听过多少款无服务器架构(Serverless)数据库? 什么是Serverless呢?简单理解,Serverless 分为 FaaS 和 BaaS 两个部分,其中 FaaS 指的是函数即服务,Baa ...

  4. onps栈使用说明(2)——ping、域名解析等网络工具测试

    1. ping测试 协议栈提供ping工具,其头文件为"net_tools/ping.h",将其include进你的目标系统中即可使用这个工具. -- #include " ...

  5. 【ASP.NET Core】MVC控制器的各种自定义:修改参数的名称

    在上一篇中,老周演示了通过实现约定接口的方式自定义控制器的名称. 至于说自定义操作方法的名称,就很简单了,因为有内置的特性类可以用.看看下面的例子. [Route("[controller] ...

  6. Python基础之数据库:5、创建表的完整语法、MySQL数据类型

    一.创建表的完整语法 1.创建表的语法 create table 表名( ​ 字段名1 字段类型(数字) 约束条件, ​ 字段名2 字段类型(数字) 约束条件, ​ 字段名3 字段类型(数字) 约束条 ...

  7. React综合使用联系

    index.js import React from 'react' import ReactDOM from 'react-dom' import CartSimple from './CartSi ...

  8. Android ViewPager2 + Fragment 联动

    Android ViewPager2 + Fragment 联动 本篇主要介绍一下 ViewPager2 + Fragment , 上篇中简单使用了ViewPager2 实现了一个图片的滑动效果, 那 ...

  9. 【SQL基础】多表查询:子查询、连接查询(JOIN)、组合查询(UNION集合运算)

    〇.概述 1.内容 JOIN表连接(内连接INNER JOIN/JOIN)(外连接LEFT/RIGHT (OUTER) JOIN) 集合运算-UNION联合 2.建表语句 drop table if ...

  10. Qt栅格布局、ScrollArea和用户选择界面

    用户选择界面 就我们在实际开发的时候可能需要面对这样一个界面 做个demo试试看 其实我们可以分解一下这个界面 就是除了控制相关的内容,最主要的就是这个界面之上,有一个个动态的输入的控件,上面都是学生 ...