什麼資料庫能抗住《王者榮耀》的1億DAU?

2021-10-10 12:54:35 字數 1437 閱讀 2493

任何一款遊戲的成功都不是偶然的,《王者榮耀》在保證遊戲的挑戰性、趣味性和多樣性上做了很多功夫,僅系統就有幾十個,包括戰鬥系統、玩家系統、銘文等。目前,《王者榮耀》的後台資料量已高達數百tb,1個區有100多個表且還在不斷增加。這就致使了《王者榮耀》對資料庫效能、穩定性、擴縮容、成本、遊戲特有場景等方面有著更高要求。

「我們對比過很多資料庫,在目前王者的資料容量和併發條件下,tcaplusdb的讀寫時延是最穩定的!」《王者榮耀》相關技術負責人評價道。在他看來,tcaplusdb高併發、低時延、低成本的效能優勢為《王者榮耀》的資料執行和遊戲業務場景提供了強勁支撐。

具體來說,tcaplusdb擁有接近無限的水平擴充套件能力。基於shard分片的分布式技術,其單錶容量可以支援2.56 pb,吞吐能力隨硬體擴充呈線性增長。同時,通過快慢請求分離與記錄級鎖,它可以解決複雜請求和簡單請求的隔離,減少鎖定範圍提公升讀寫效率。此外,基於創新演算法,tcaplusdb可以在乙個程序中實現冷熱資料的交換,解決跨程序資料交換的一致性、可用性與管理複雜等問題。

從遊戲業務場景的角度出發,tcaplusdb支援表級和記錄級的資料生命週期管理,能夠有效實現活動資料的過期清理。此外,基於冷備資料和二進位制日誌資料,tcaplusdb還可以針對全服級、表級、記錄級或按照指定條件進行回檔,且時間精確到毫秒。

另一方面,面對海量增長的使用者數,系統穩定和擴容一直是《王者榮耀》的關注焦點。

不管是每年的「開黑節」、春節期間的dau**還是5周年慶的計畫性擴容,tcaplusdb都能在應對頻繁擴容需求的同時確保著5個9的高可用性。

2023年春節,tcaplusdb陸續對各個大區7個表進行了15次擴容,擴容集群服務只增加了20組。最後一次擴容,在1小時內完成了突增100萬-200萬 pcu擴容,且在擴容過程中玩家無感知。

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

首先是理解應用的自動負載均衡和過載保護。以過載保護為例,tcaplusdb能站在「遊戲伺服器」的視角感知業務過載,通過處理時延、佇列長度、成功率等指標綜合評估資料庫的負載能力,對高負載應用進行保護,防止雪崩發生。

同時,tcaplusdb針對計畫內擴容和計畫外擴容,提出了不同的解決方案,根據實際情況隨機應變,靈活處理,並通過對可用區故障的自動切換與修復,在技術上支援跨可用區和單裝置的故障自動切換和修復,既保障了擴容的速度和效率,又做到對玩家的完全無感。

值得一提的是,這不是首次面對這樣的挑戰。早在2023年春節期間,tcaplusdb就經歷了連續七天的深夜擴容,在系統能力不足的情況下,通過開啟讀分流規避方案,成功度過高峰期。s賽季期間,由於玩家想看的賽季場數超過最初設計的10場,tcaplusdb是進行了大規模改表結構,緊急支援表結構修改對使用者無感方案。

本文由部落格一文多發平台 openwrite 發布!

什麼資料庫能抗住《王者榮耀》的1億DAU?

任何一款遊戲的成功都不是偶然的,王者榮耀 在保證遊戲的挑戰性 趣味性和多樣性上做了很多功夫,僅系統就有幾十個,包括戰鬥系統 玩家系統 銘文等。目前,王者榮耀 的後台資料量已高達數百tb,1個區有100多個表且還在不斷增加。這就致使了 王者榮耀 對資料庫效能 穩定性 擴縮容 成本 遊戲特有場景等方面有...

什麼?雲資料庫也能C位出道?

資料庫從來不缺少明星產品,正如業內引以為常的db engines ranking 從誕生的第一天起就以popularity作為排名標準,開啟了一場點讚通道從未關閉的技術選秀。出乎意料的是,2014年amazon aws發布雲資料庫aurora開始正式進軍每年400億美金的資料庫市場。comprehe...

什麼?雲資料庫也能C位出道?

資料庫從來不缺少明星產品,正如業內引以為常的db engines ranking 從誕生的第一天起就以popularity作為排名標準,開啟了一場點讚通道從未關閉的技術選秀。出乎意料的是,2014年amazon aws發布雲資料庫aurora開始正式進軍每年400億美金的資料庫市場。企業級分布式雲資...