從新手游上線看游戲數(shù)據(jù)庫(kù)選型
最近我們深入游戲場(chǎng)景,參與支撐一個(gè)全新的手游項(xiàng)目上線,交流中發(fā)現(xiàn)經(jīng)驗(yàn)豐富的游戲架構(gòu)師都比較認(rèn)可一個(gè)觀點(diǎn):游戲業(yè)務(wù)設(shè)計(jì)離不開一款靠譜的 KV 數(shù)據(jù)庫(kù)。
這款游戲項(xiàng)目定位是爆款精品,有長(zhǎng)期運(yùn)營(yíng)規(guī)劃,因此在前期開發(fā)階段就鎖定了合適的“主數(shù)據(jù)庫(kù)”選型——華為云 KV 數(shù)據(jù)庫(kù) GaussDB(forRedis)。
回顧這次項(xiàng)目,我們總結(jié)了游戲業(yè)務(wù)對(duì)數(shù)據(jù)庫(kù)的部分關(guān)鍵訴求:
1.注重玩家體驗(yàn),對(duì) KV 數(shù)據(jù)庫(kù)穩(wěn)定性要求很高
這款游戲預(yù)計(jì)上半年會(huì)達(dá)到日活數(shù)百萬 DAU,目前核心的玩家數(shù)據(jù)都使用 KV 數(shù)據(jù)庫(kù)存儲(chǔ)。一旦數(shù)據(jù)庫(kù)發(fā)生不可用,很可能大量玩家無法進(jìn)入戰(zhàn)斗房間。
在穩(wěn)定性方面,GaussDB(forRedis)能力領(lǐng)先,在 3 可用區(qū)架構(gòu)下,可靠性極高。研發(fā)團(tuán)隊(duì)很早以前就已經(jīng)對(duì)集群管理做了大量可靠性加固工作,極端場(chǎng)景下,即使集群發(fā)生大半數(shù)節(jié)點(diǎn)故障,客戶的業(yè)務(wù)也可以在數(shù)秒內(nèi)快速恢復(fù),完全不會(huì)造成大規(guī)模玩家體驗(yàn)受損。
穩(wěn)定性能力是需要持續(xù)打磨的,華為云研發(fā)團(tuán)隊(duì)還在繼續(xù)對(duì) GaussDB(forRedis)集群管理架構(gòu)進(jìn)行優(yōu)化,以實(shí)現(xiàn)極致的快速恢復(fù)。
2.考慮長(zhǎng)期運(yùn)營(yíng),數(shù)據(jù)存儲(chǔ)成本要可控
其實(shí)業(yè)界有很多游戲公司都會(huì)用 KV 庫(kù)存玩家數(shù)據(jù),這里最常用的是自建開源 Redis,在 GB 級(jí)的數(shù)據(jù)量下,這個(gè)方案沒有不妥,但一旦考慮到長(zhǎng)期運(yùn)營(yíng),開源 Redis 純內(nèi)存成本是直線上漲的,例如:16GB 成本需要 1500,后期擴(kuò)容到 32GB 需要 3000,一年后到了 320GB 就要 30000。在成本痛點(diǎn)訴求下,業(yè)務(wù)方肯定會(huì)尋求最合適自己業(yè)務(wù)的存儲(chǔ)選型。
這次的項(xiàng)目里,GaussDB(forRedis)就是最適合游戲業(yè)務(wù)的 KV 數(shù)據(jù)庫(kù)。存儲(chǔ)池成本遠(yuǎn)比純內(nèi)存低,客戶可以放心長(zhǎng)期存,這個(gè)游戲放在華為云 3 年、5 年、10 年,客戶都不必?fù)?dān)心將來的成本問題,可以放心聚焦到游戲自身的運(yùn)營(yíng)和質(zhì)量打磨上。
3.資源彈性,活動(dòng)前后能夠無感擴(kuò)縮容
游戲首發(fā)只是個(gè)開頭,長(zhǎng)期運(yùn)營(yíng)中,會(huì)給玩家舉辦各類節(jié)日活動(dòng)。這時(shí)候就要求數(shù)據(jù)庫(kù)能夠彈性伸縮。GaussDB(forRedis)存算分離架構(gòu)最具特色的就是:秒級(jí)擴(kuò)容。使用華為云 GaussDB(forRedis)后,游戲客戶完全可以這樣操作:
(1)周五晚上擴(kuò)一波資源,在線擴(kuò)就行,對(duì)業(yè)務(wù)影響極小;
(2)周末做活動(dòng)抗住大數(shù)據(jù)量、大流量,確保活動(dòng)順利;
(3)等到周一活動(dòng)熱度過去,進(jìn)行一把在線縮容即可。
這里面涉及到很多的技術(shù)設(shè)計(jì),比如秒級(jí)擴(kuò)容,其基本原理如下:
GaussDB(forRedis)計(jì)算資源、存儲(chǔ)資源都支持獨(dú)立擴(kuò)展:
這次游戲上線很成功,GaussDB(forRedis)強(qiáng)力保障了客戶業(yè)務(wù)穩(wěn)定高效運(yùn)行。今年 GaussDB(forRedis)產(chǎn)品和研發(fā)團(tuán)隊(duì)會(huì)繼續(xù)加強(qiáng)投入,力爭(zhēng)在穩(wěn)定性、使用體驗(yàn)上有進(jìn)一步的提升,為更多業(yè)務(wù)架構(gòu)帶來更優(yōu)的解決方案。
審核編輯黃宇
-
數(shù)據(jù)庫(kù)
+關(guān)注
關(guān)注
7文章
3905瀏覽量
65873 -
華為云
+關(guān)注
關(guān)注
3文章
2764瀏覽量
18160
發(fā)布評(píng)論請(qǐng)先 登錄
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)——MongoDB數(shù)據(jù)庫(kù)文件拷貝后服務(wù)無法啟動(dòng)的數(shù)據(jù)恢復(fù)

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL Server附加數(shù)據(jù)庫(kù)提示“錯(cuò)誤 823”的數(shù)據(jù)恢復(fù)案例

分布式云化數(shù)據(jù)庫(kù)有哪些類型
MySQL數(shù)據(jù)庫(kù)的安裝

云數(shù)據(jù)庫(kù)是哪種數(shù)據(jù)庫(kù)類型?
數(shù)據(jù)庫(kù)加密辦法
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—Mysql數(shù)據(jù)庫(kù)表記錄丟失的數(shù)據(jù)恢復(fù)流程

數(shù)據(jù)庫(kù)事件觸發(fā)的設(shè)置和應(yīng)用
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—MYSQL數(shù)據(jù)庫(kù)ibdata1文件損壞的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)庫(kù)碎片恢復(fù)SQLserver數(shù)據(jù)庫(kù)

Oracle數(shù)據(jù)恢復(fù)—異常斷電后Oracle數(shù)據(jù)庫(kù)啟庫(kù)報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫(kù)文件system01.dbf損壞的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫(kù)出現(xiàn)823錯(cuò)誤的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫(kù)所在分區(qū)空間不足報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例
數(shù)字化時(shí)代的數(shù)據(jù)管理:多樣化數(shù)據(jù)庫(kù)選型指南

評(píng)論