遊戲
亞太地區
企業/公用部門
"資料就是我們的命脈,這毫不誇張。阿里雲Business Foundation System資料庫MongoDB版強大的效能和靈活的擴充能力正在協助我們提升《一念逍遙》的開發和營運效率,為玩家帶來不間斷的'修仙'體驗。我相信這隻是資料庫服務能力的一小部分。接下來,隨著我們著手開發更多遊戲專案並規劃海外推廣戰略,我期待深度挖掘阿里雲Business Foundation System資料庫MongoDB版更大的潛力。"
沈玉清,G-bits技術中心負責人兼《一念逍遙》製作人
簡介
遊戲行業蓬勃發展,日趨多元化近年來,全球遊戲產業蓬勃發展,其中很大一部分增長來自中國——憑藉龐大的人口基數和才華橫溢的開發人員生態。熱度的提升也催生了豐富多樣的遊戲主題、風格和裝置,滿足不同玩家的偏好。G-bits是抓住這一增長機遇的領先遊戲開發商之一,這家位於廈門的上市遊戲開發工作室自成立以來持續深耕研發,自主創新能力突出,推出了一系列熱門遊戲,累計吸引超過4500萬玩家,包括《問道(手遊版)》《異化之地》《鬥法》和最受歡迎的《問道》。
隨著玩法多樣化和玩家規模的不斷增長,公司的技術棧面臨越來越大的挑戰,特別是在規模化高效營運和提供豐富功能方面。工作室的最新力作《一念逍遙》是一款精美的手遊,採用中國傳統水墨畫風格和修仙等經典主題(修仙是通過特定武術和玄術延長角色生命的概念)。G-bits技術中心負責人兼《一念逍遙》製作人沈玉清與Team Dev希望將其打造成一款清新獨特、上手快、受眾廣的手遊。為此他和團隊必須克服重重困難,其中最根本的是尋找更優質的資料基礎設施來賦能遊戲,以期打造下一個熱門作品。
挑戰
對使用者體驗和靈活性的高要求催生全新資料層策略《一念逍遙》的Team Dev希望在遊戲中引入多種新元素,但工作室期望很高、開發週期緊張,壓力很大。團隊採用了"小步快跑"的敏捷開發方式,即持續開發與整合並無縫銜接遊戲上線的迭代方法論。底層資料庫軟體和營運是保障玩家體驗和遊戲營運效率的基礎。
此前的遊戲,G-bits一直使用本地部署的關係型資料庫MySQL來構建和營運遊戲,但團隊認為新遊戲將對關聯式模式構成挑戰。主要有三個原因:
• 第一,確保玩家體驗流暢不中斷,要求平台具備無縫處理遊戲資料的能力。即使後端發生故障,也不應影響玩家體驗。因此容錯移轉和恢複速度必須迅速,服務回應時間需達到亞微秒級,以保障玩家的良好體驗。
• 第二,沈玉清和團隊需要輕鬆應對各類營運流程產生的資料,及時支援新遊戲發布。《一念逍遙》的潛在使用者群體龐大,但在功能測試、效能測試、遊戲發布和線上服務營運等不同階段,資料庫資源需求差異很大,因此需要高效擴縮容。此外,單機部署多個資料庫執行個體時,CPU和IO資源爭用很容易導致效能問題。
• 第三是靈活性。《一念逍遙》中角色屬性經常變化,新武器和道具等元素不斷引入,遊戲邏輯和資料結構動態變化,對資料庫的靈活性要求很高。關係資料模型也使添加新資料類型變得更加困難。
雖然MySQL能夠滿足部分大型手遊專案的基本效能和功能需求,但在需要擴縮容或調整遊戲時,關係型資料庫會帶來重大挑戰。團隊不得不手動對RDBMS進行分區,過程繁瑣耗時,且有降低使用者體驗的風險。
解決方案
MongoDB與阿里雲聯手,帶來出色的靈活性與強大的效能幾年前,沈玉清曾在一次專案中試用過ApsaraDB for MongoDB。據他描述,雖然只是測試了部分功能,但其易用性和靈活性給他留下了深刻印象。
ApsaraDB for MongoDB是由阿里巴巴營運、MongoDB Inc認證的全託管雲資料庫服務。阿里巴巴是該地區少數幾家提供MongoDB即服務的進階夥伴之一,使企業能夠在全球最大的市場之一自由創新,並貼近其最大的客戶群。《一念逍遙》上線後,沈玉清和團隊需要找到一款靈活性和效能更高的資料庫。更換資料庫是一項重大決策,但結果遠超預期。
經過調研比較,團隊很快又回到了ApsaraDB for MongoDB。
沈玉清解釋說,《一念逍遙》的資料以JSON文檔形式儲存,非常適合MongoDB文檔資料庫。底層文檔模型使開發人員能夠輕鬆修改和添加新功能。
在保障使用者體驗方面,ApsaraDB for MongoDB同樣表現出色。作為彈性雲端服務,它可根據各種情境靈活擴縮容,滿足資料庫資源需求(使用者量大時擴容,使用者量低時縮容)。
此外,靈活的模型可將角色資料存放區在單個集合中,調整成本低。資料存放在同一可用性區域,本地玩家的查詢回應時間平均為400微秒。該服務還支援高可用,配合重試和緩衝,即使出現小型故障也能確保玩家獲得穩定不間斷的服務。
另外,針對遊戲上線和營運方面的挑戰,ApsaraDB for MongoDB提供開箱即用的功能,支援新遊戲快速發布。例如,通過阿里雲的雲備份和oplog多線程恢複大幅提升資料備份和恢複速度。同時,ApsaraDB for MongoDB支援負載隔離,團隊可將不同負載分配到部署中的各節點,消除可能對遊戲體驗產生負面影響的資源爭用。
成果
出海自2021年2月上線以來,《一念逍遙》已吸引數千萬玩家,同時線上人數可達數十萬,遠超Team Dev的預期。通過使用ApsaraDB for MongoDB及其oplog多線程增量恢複等功能,故障恢復縮短了50倍。
此外,阿里雲ApsaraDB for MongoDB不僅滿足了《一念逍遙》的高效能需求,還降低了G-bits在營運方面的投入。
監控、可視化和備份等開箱即用的功能使營運效率至少提升了一倍。沈玉清和團隊現在能夠更專註於開發新功能來提升使用者參與度。釋放出來的時間也讓他們得以繼續推進另一項大膽嘗試:構建自有遊戲程式設計語言Game Script(GS),類似Python和JavaScript,並利用該語言構建遊戲伺服器架構。不難猜到他會選擇哪個資料庫服務。
不僅如此,隨著阿里雲Business Foundation System資料庫升級至MongoDB 5.0,沈玉清和團隊期待藉助原生時間序列集合等新特性開發更多手遊。同時,憑藉在中國市場的成功經驗,他們還計劃攜手阿里雲ApsaraDB for MongoDB,助力《一念逍遙》走向全球,讓海外玩家也能體驗修仙之路。
精選產品
安全、可靠、彈性可擴充的雲資料庫服務,支援自動監控、備份和按時間點恢複。
