任何一款游戲的成功都不是偶然的,《王者榮耀》在保證游戲的挑戰(zhàn)性、趣味性和多樣性上做了很多功夫,僅系統(tǒng)就有幾十個,包括戰(zhàn)斗系統(tǒng)、玩家系統(tǒng)、銘文等。目前,《王者榮耀》的后臺數(shù)據(jù)量已高達數(shù)百TB,1個區(qū)有100多個表且還在不斷增加。這就致使了《王者榮耀》對數(shù)據(jù)庫性能、穩(wěn)定性、擴縮容、成本、游戲特有場景等方面有著更高要求。

對于《王者榮耀》而言,數(shù)據(jù)庫是靈魂,承載著所有系統(tǒng)的信息落地,而專為游戲而生的騰訊云自研分布式NoSQL數(shù)據(jù)庫TcaplusDB,5年來一直為《王者榮耀》的核心數(shù)據(jù)提供數(shù)據(jù)庫服務。可以說,每一次的玩家登陸、每一局的對戰(zhàn)、每一輪的錄像回放都是對TcaplusDB的考驗,每一次的團戰(zhàn)都需要在海量的數(shù)據(jù)中進行增刪改查。

“我們對比過很多數(shù)據(jù)庫,在目前王者的數(shù)據(jù)容量和并發(fā)條件下,TcaplusDB的讀寫時延是最穩(wěn)定的!”《王者榮耀》相關(guān)技術(shù)負責人評價道。在他看來,TcaplusDB高并發(fā)、低時延、低成本的性能優(yōu)勢為《王者榮耀》的數(shù)據(jù)運行和游戲業(yè)務場景提供了強勁支撐。

具體來說,TcaplusDB擁有接近無限的水平擴展能力。基于shard分片的分布式技術(shù),其單表容量可以支持2.56 PB,吞吐能力隨硬件擴充呈線性增長。同時,通過快慢請求分離與記錄級鎖,它可以解決復雜請求和簡單請求的隔離,減少鎖定范圍提升讀寫效率。此外,基于創(chuàng)新算法,TcaplusDB可以在一個進程中實現(xiàn)冷熱數(shù)據(jù)的交換,解決跨進程數(shù)據(jù)交換的一致性、可用性與管理復雜等問題。

從游戲業(yè)務場景的角度出發(fā),TcaplusDB支持表級和記錄級的數(shù)據(jù)生命周期管理,能夠有效實現(xiàn)活動數(shù)據(jù)的過期清理。此外,基于冷備數(shù)據(jù)和二進制日志數(shù)據(jù),TcaplusDB還可以針對全服級、表級、記錄級或按照指定條件進行回檔,且時間精確到毫秒。

另一方面,面對海量增長的用戶數(shù),系統(tǒng)穩(wěn)定和擴容一直是《王者榮耀》的關(guān)注焦點。

不管是每年的“開黑節(jié)”、春節(jié)期間的DAU上漲還是5周年慶的計劃性擴容,TcaplusDB都能在應對頻繁擴容需求的同時確保著5個9的高可用性。

2020年春節(jié),TcaplusDB陸續(xù)對各個大區(qū)7個表進行了15次擴容,擴容集群服務只增加了20組。最后一次擴容,在1小時內(nèi)完成了突增100萬-200萬 PCU擴容,且在擴容過程中玩家無感知。

這是個幾乎不可能完成的任務,但TcaplusDB交上了滿分答卷。它是怎么做到的?

首先是理解應用的自動負載均衡和過載保護。以過載保護為例,TcaplusDB能站在“游戲服務器”的視角感知業(yè)務過載,通過處理時延、隊列長度、成功率等指標綜合評估數(shù)據(jù)庫的負載能力,對高負載應用進行保護,防止雪崩發(fā)生。

同時,TcaplusDB針對計劃內(nèi)擴容和計劃外擴容,提出了不同的解決方案,根據(jù)實際情況隨機應變,靈活處理,并通過對可用區(qū)故障的自動切換與修復,在技術(shù)上支持跨可用區(qū)和單設備的故障自動切換和修復,既保障了擴容的速度和效率,又做到對玩家的完全無感。

值得一提的是,這不是首次面對這樣的挑戰(zhàn)。早在2017年春節(jié)期間,TcaplusDB就經(jīng)歷了連續(xù)七天的深夜擴容,在系統(tǒng)能力不足的情況下,通過開啟讀分流規(guī)避方案,成功度過高峰期。S賽季期間,由于玩家想看的賽季場數(shù)超過最初設計的10場,TcaplusDB是進行了大規(guī)模改表結(jié)構(gòu),緊急支持表結(jié)構(gòu)修改對用戶無感方案。

歷經(jīng)騰訊內(nèi)部8年的游戲經(jīng)驗積累,TcaplusDB數(shù)據(jù)庫已廣泛應用于《王者榮耀》、《刺激戰(zhàn)場》、《穿越火線》、《火影忍者》等數(shù)百款流行游戲,并通過騰訊云向全球游戲業(yè)務提供服務。

未來,隨著以《王者榮耀》為代表的手游市場邁入新臺階,騰訊云數(shù)據(jù)庫也將持續(xù)投入資源以豐富游戲行業(yè)的技術(shù)產(chǎn)品生態(tài),不斷提升綜合服務能力,助力手游市場高質(zhì)量快速增長。

分享到

zhangnn

相關(guān)推薦