从新手游上线看游戏数据库选型

电子说

1.3w人已加入

描述

从新手游上线看游戏数据库选型

最近我们深入游戏场景,参与支撑一个全新的手游项目上线,交流中发现经验丰富的游戏架构师都比较认可一个观点:游戏业务设计离不开一款靠谱的 KV 数据库。

这款游戏项目定位是爆款精品,有长期运营规划,因此在前期开发阶段就锁定了合适的“主数据库”选型——华为云 KV 数据库 GaussDB(for Redis)。

回顾这次项目,我们总结了游戏业务对数据库的部分关键诉求:

1.注重玩家体验,对 KV 数据库稳定性要求很高

这款游戏预计上半年会达到日活数百万 DAU,目前核心的玩家数据都使用 KV 数据库存储。一旦数据库发生不可用,很可能大量玩家无法进入战斗房间。

在稳定性方面,GaussDB(for Redis)能力领先,在 3 可用区架构下,可靠性极高。研发团队很早以前就已经对集群管理做了大量可靠性加固工作,极端场景下,即使集群发生大半数节点故障,客户的业务也可以在数秒内快速恢复,完全不会造成大规模玩家体验受损。

华为云

稳定性能力是需要持续打磨的,华为云研发团队还在继续对 GaussDB(for Redis)集群管理架构进行优化,以实现极致的快速恢复。

2.考虑长期运营,数据存储成本要可控

其实业界有很多游戏公司都会用 KV 库存玩家数据,这里最常用的是自建开源 Redis,在 GB 级的数据量下,这个方案没有不妥,但一旦考虑到长期运营,开源 Redis 纯内存成本是直线上涨的,例如:16GB 成本需要 1500,后期扩容到 32GB 需要 3000,一年后到了 320GB 就要 30000。在成本痛点诉求下,业务方肯定会寻求最合适自己业务的存储选型。

这次的项目里,GaussDB(for Redis)就是最适合游戏业务的 KV 数据库。存储池成本远比纯内存低,客户可以放心长期存,这个游戏放在华为云 3 年、5 年、10 年,客户都不必担心将来的成本问题,可以放心聚焦到游戏自身的运营和质量打磨上。

3.资源弹性,活动前后能够无感扩缩容

游戏首发只是个开头,长期运营中,会给玩家举办各类节日活动。这时候就要求数据库能够弹性伸缩。GaussDB(for Redis)存算分离架构最具特色的就是:秒级扩容。使用华为云 GaussDB(for Redis)后,游戏客户完全可以这样操作:

(1)周五晚上扩一波资源,在线扩就行,对业务影响极小;

(2)周末做活动抗住大数据量、大流量,确保活动顺利;

(3)等到周一活动热度过去,进行一把在线缩容即可。

这里面涉及到很多的技术设计,比如秒级扩容,其基本原理如下:

华为云

GaussDB(for Redis)计算资源、存储资源都支持独立扩展:

华为云

这次游戏上线很成功,GaussDB(for Redis)强力保障了客户业务稳定高效运行。今年 GaussDB(for Redis)产品和研发团队会继续加强投入,力争在稳定性、使用体验上有进一步的提升,为更多业务架构带来更优的解决方案。

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分