[情報] 主程式用戶端改善計畫:進度更新報告

作者: S890127 (丁讀生)   2020-05-02 05:21:58
https://riot.com/3fazLmf
數個月之前我們宣布了「用戶端改善計畫」,今天要來報告正向的進展、我們遭遇到的
阻礙,以及計畫的下一步發展。
●一些進展
如同前一篇開發部落所說的,第一步是要把用戶端的啟動時間降低到 15 秒以下,為此
我們合併且減少了用戶端中 plugins(外掛套件)和 ember apps 的數量。
相較之前,用戶端啟動時需要載入的 plugins(外掛套件)和 ember apps 的數量分別
減少了 10% 和 20%,如下圖所示。
https://i.imgur.com/Evu7VFf.png
●一些阻礙
雖然外掛套件的減少讓用戶端的啟動時間顯著改善了,但在 10.3 版本開始,啟動時間
卻往錯誤的方向變化了,到了 10.7 版本,整體的啟動時間都變慢了,如下圖所示。
解釋:我們希望曲線更偏左(啟動時間更短)
https://i.imgur.com/lBdqN7n.png
一個可能的理由是這幾周登入英雄聯盟的玩家變多了,增加了伺服器的負荷,因為顯而
易見的某些原因,大家有更多的時間待在家打電動,這對伺服器是個艱難的挑戰,因此
會出現不穩定的反應時間以及更緩慢的啟動時間。
我們提升伺服器的負荷量之後,伺服器的表現應該有望獲得改善,我們也對其他可能的
原因提出解決辦法,例如減少啟動時載入的 Javascript 代碼數量。
無論這些阻礙的原因,我們都保持希望:正如在第一篇開發部落所說的,在改善啟動時
間與選角時間(這是計畫的下一步)的過程中,我們也會對伺服器架構的基礎層面進行
清理與重製。
也就是說我們正在修復藏在伺服器中的 Bug 並深掘基礎架構中的各種問題。
我們因此發現架構中的一個問題與伺服器中的一項功能「Affinity」有關。
●「Affinity」的問題
「Affinity」是多年前進行用戶端更新時加入的功能,基本上它是一個在用戶端啟動時
指定要載入哪些 plugins(外掛套件)的工具。
我們發現了兩個與「Affinity」有關的問題:
‧「Affinity」故障了
在 2018 年的某個時間點它無意間壞了,因為它沒有發揮應有的作用,導致每次啟動
跟結束遊戲後,所有的外掛套件都會被預設載入。
‧即便修復了「Affinity」也解決不了問題
我們相信即便它正常運作,它也無法區分外掛套件的優先順序,簡單來說在啟動時它
還是載入了過多的外掛套件。
懶人包:我們需要有個更好更有效率的解決方案來完全取代「Affinity」
這個發現完全出乎我們的意料,但使我們更加相信「只要我們肯花時間挖得更深,便能
在伺服器的深處找到問題的根源」這個道理。
●下一步
既然已經知道「Affinity」沒有發揮效用,我們會加入一個真正能區分外掛套件優先順
序的解決方案,藉此減少用戶端的啟動時間,並解放其他重要的伺服器功能。
這些並不會對我們改善用戶端的計畫有什麼根本上的改變,但可能會延緩我們的腳步。
無論如何,我們都將這次發現視為好消息,因為它指出了明朗的正確方向,只要最終結
果是順暢可靠的用戶端,那我們的苦心便沒有白費。
只要用戶端的啟動時間降低到令人滿意的範圍,我們便會著手進行「用戶端改善計畫」
的第二階段:「減少選角時的用戶端反應時間」,對大多數玩家來說這肯定是最重要的
部分,我們也迫不及待要搞定它了。
我們會持續分享最新進展,接下來數個月還會有類似這樣的開發部落文章。
一如往常的,感謝你們遊玩本遊戲。
作者: NankanAvenge (amuse)   2020-05-02 05:46:00
反觀Garena的用戶端跟屎一樣卻完全沒想要改善 給Garena代理的區域真可憐 還要當免費礦工
作者: lucifiel1618 (Lucifiel)   2020-05-02 10:30:00
關我屁事= =
作者: MileBackward (Mile Backwards)   2020-05-02 13:54:00
Garena 地區還不能用OP.GG 查戰績 爛死

Links booklink

Contact Us: admin [ a t ] ucptt.com