《魔獸世界》已運營22年,即便到了現在,暴雪有時仍難以應對玩家需求。昨日,《魔獸世界永恆》開啟測試,隨即因玩家扎堆湧入導致伺服器直接崩潰。暴雪擁有數十年MMO內容上線經驗,為何還會出現這種情況?開發者表示,他們也完全沒料到《永恆》的測試會如此火爆。

高級遊戲設計師喬希·格林菲爾德在推特上表示:「天吶,昨晚我激動得都睡不著覺。測試的情況……太瘋狂了。這是我在暴雪工作17年、在懷舊服項目待了近8年來見過的最離譜的數據。我們這次做的東西真的非同凡響。」
這話聽起來或許有些誇張,但高級遊戲製作人湯姆·埃利斯發布了一份更詳盡的技術分析,解釋了《永恆》測試開服初期的故障原因。埃利斯在推特上說明:「這根本不是生產級的伺服器集群,差得遠了去了。《魔獸世界》的測試服通常不會有太大的流量波動,所以這套環境的配置本身就沒那麼高。」
埃利斯表示,由於「我們這套小型測試環境只啟用了一台區域伺服器」,海量玩家突然湧向這唯一的接入點,導致伺服器的運算邏輯開始出錯。這就是玩家排了漫長的登錄隊列後,還頻頻掉線的原因。
開發者花了「約半小時」才定位到這個瓶頸,因為遊戲本身和戰網服務都顯示負載極低。埃利斯解釋道:「我們都清楚,這套系統觸發時需要更多的日誌記錄和通知提醒,但這種沒有明顯CPU異常伴隨的觸發情況,所有人都是第一次遇到。二十年了,總能碰到新問題。」
埃利斯還提到了玩家在拾取物品、接取任務等需要伺服器響應的操作時出現的延遲問題。「我們敢打敢拼的甲骨文資料庫工程師不得不對所有數據表執行手動分析,還設置了一些自動任務定期維護」,但由於伺服器訪問頻率過高,常規的處理速率根本跟不上。開發者一解決這個問題,資料庫性能「立刻就恢復了正常」。
之後還進行了伺服器重啟。埃利斯解釋:「開服幾小時後,我們發現運行遊戲模擬的世界伺服器池CPU占用飆升,內存也快耗盡了。」空地圖沒有被正確關閉,這些進程正慢慢——或者說「其實也沒那麼慢」——擠占伺服器的CPU和內存。開發者找到了修複方案,但需要重啟伺服器才能生效。暴雪也藉此機會新增了更多世界伺服器,擴容了區域服務,進一步提升穩定性。
早在2019年,媒體就曾採訪過多位開發者,探討大型網遊開服必崩的原因,看來這些老問題總會不可避免地反覆出現。曾有開發者表示,要徹底解決這類開服問題「根本不可能」,而《魔獸世界永恆》的情況也證明,每次開服總會冒出新的狀況。不過話說回來,至少現在修復速度快多了。我可是還記得當年《暗黑破壞神3》發售後,玩家折騰了好幾個星期都沒法好好玩……






