[閒聊] D2R 暴雪對這幾天伺服器問題的官方解釋

作者: NiGHTsC   2021-10-15 13:06:21
暴雪對這幾天伺服器問題的官方長篇詳細說明
https://us.forums.blizzard.com/en/d2r/t/diablo-ii-resurrected-outages-an-explanation-how-we%E2%80%99ve-been-working-on-it-and-how-we%E2%80%99re-moving-forward/28164
https://bit.ly/3lFPgYM
就重點節錄一下,細節滿多的就不全翻了
前言:先解釋一下資料庫是怎麼運行的 -> 全球型資料庫與地區型資料庫
就如同字面上的意思,全球型就是玩家所有的資料與進度,
但當然不可能只有全球型有
所以地區型資料庫(美/歐/亞)才是第一線保存庫,
畢竟這樣反應才即時與迅速,之後才再同步到全球型。
接下來就是整件事的全貌
起因是因為禮拜六美西早晨,突然發生了比D2R發行首日更巨大的突發流量,
完全超過了伺服器可以承擔的程度,而起因就是前天為了
加強創建房間的效率的更新所造成的
當然,我們立即的還原回更新前的狀態,也同時觀察真正的原因為何
禮拜天,前天的還原完全是不夠的,因為流量又更大伺服器又爆了,
遊戲端和伺服器端兩邊都在不斷的重連,完全無法處理修復任務
又繼續的修復,繼續的觀察真正的原因
禮拜天之後的正常狀態也只是治標不治本,
因為當時首要任務只是能最基本的運行,
之後就是短時間內數以十萬的流量,就又倒了
禮拜一,為了修復所以需要更新全球型資料庫,
但又同時要承載各地區的角色資料與進度
繼續的修復,繼續的觀察真正的原因,
繼續的發現更多的問題,繼續的加強
但至少是相信已經修復前幾天伺服器一直瘋狂重連的問題,
因為禮拜二這問題沒再出現了
禮拜二,一樣的又爆流量爆同時線上人數量了,
而且是各單一地區的爆量
這一點工程師們還在解決中,也緊急求援其他部門與第三方夥伴處理其他小問題
所以為何會這樣?
因為是20年前的遊戲了,跟不上2021的腳步了。
不管是主要功能、創建/加入房間、大廳房間的列表/更新/篩選
伺服器的健康程度、檢查玩家是否符合所篩選的房間列表,等等
但最大的問題還是創建房間
現今因為網路的發達,20年前玩家群的效率是完全比不上的
例:巴爾車、暴皮、古道,其他熱門MF區
大家可以更簡單的藉由網路找到更有效的方法
也同時的代表更大數量的伺服器要求 -> 短時間內大量開房/離開/再開
其實發行前就有預估這情況了,但還是遠遠的不及現在的程度
再來,就是全球型資料庫太頻繁的同步更新
(之前在PTT這也有相關的建議,例如要換區玩家再手動更新之類的)
這會是長遠的計劃,因為這會牽涉到整個架構的重組
再來,大家最關心的進度流失問題
這是因為玩家們在選擇地區後,大部分進度就會鎖定在該地區
但當伺服器過載時,資料庫倒掉時,玩家們就會被鎖在該地區
我們也無法將進度傳送到全球型。
這時就只有兩條路,解鎖大家並且使用全球型的舊資料庫
或,整個遊戲無限期停擺去跑同步資料
這其實只有一個選擇…
我們相信已有辦法可以將這損失縮短到幾分鐘,但我們並不會滿足於此
最後,大家更關心的解決方案
-限流:限制開房/加房的數量,大家前幾天應該多少有注意到
例:跑暴皮的玩家,20秒內短時間的開房/離房/開房
這時你就會看到伺服器出錯的訊息,伺服器其實沒事,只是你被限流了
當然,這只是暫時的,絕對非長期手段
-排隊機制:類WOW的排隊
上個周末絕對是個災難,新問題不停的出現
因為玩家群的「重生」、多平台的出現,有必要在高峰時段加入排隊機制
排隊機制是個可以避免伺服器過載的方法,也能讓我們觀察到時段流量
並在之後做出相對應的人數提高限制
其實這已是現在進行式「登入認證系統失敗」
-雞蛋不要全放在同一個籃子裡
也是現在進行式,有些已經完成
這樣某功能有問題也只會是那個功能失效,而不是整組掛掉
最後的最後
工程師人人爆肝,大家都是2001年的骨灰級玩家,
D2R絕對對我們也很重要
一定會持續的服務玩家。
作者: shinichi4869 (工藤新一)   2021-10-15 13:09:00
呵呵
作者: assassin5561 (黑小夢)   2021-10-15 13:39:00
公開講的都不是真相,不能講的才是真相

Links booklink

Contact Us: admin [ a t ] ucptt.com