КЛИЕНТ: обновление Chromium Embedded Framework
Мы обещали периодически рассказывать, как мы улучшаем производительность и стабильность клиента Лиги.
Перед вами восьмая статья цикла. Первую можно прочитать здесь, вторую – здесь, третью – здесь, четвертую – здесь, пятую – здесь, шестую – здесь, а седьмую – здесь.
Это короткая статья, поэтому мы не будем пересказывать суть вкратце.
Обновление Chromium Embedded Framework (CEF)
В настоящее время нашим главным приоритетом является переход на новую версию Chromium Embedded Framework (CEF) – веб-браузера, который лежит в основе архитектуры клиента Лиги. В последний раз мы обновляли CEF в ноябре 2019 года (до версии 74), а на момент написания данной статьи последняя версия CEF – 91. Как раз на нее мы и хотим перейти. Это сократит количество вылетов клиента, повысит совместимость и не только. Ни одно другое изменение не принесет столько пользы, сколько принесет обновление CEF.
Последние несколько месяцев мы занимались обновлением веб-компонентов (технологии для встраивания видео, отображения всплывающих окон и тому подобного) до версий, совместимых с новыми выпусками CEF, чтобы последующее обновление самого фреймворка ничего не сломало. Веб-компоненты используются практически во всех частях кодовой базы клиента, и у нас ушло на это больше времени, чем мы рассчитывали. К счастью, этот этап работы наконец завершен, и мы можем перейти непосредственно к обновлению CEF.
Недавно мы протестировали обновленный CEF, и результаты нас очень порадовали: новая версия клиента потребляет меньше памяти и не так сильно нагружает процессор. Мы уверены, что это решит и многие другие проблемы с игрой, но не хотим торопить события. Проект имеет огромное значение для всех игроков, и нам нужно полностью убедиться в стабильности нового клиента, прежде чем его обновлять.
Обновленный CEF должен появиться в PBE в начале августа, а спустя несколько недель – на основных серверах. Подробнее о нем вы сможете почитать в описании соответствующего обновления!
Другие проекты
- Улучшение послеигрового экрана. Этот проект – следующий на очереди после обновления CEF. Игроки часто жалуются на проблемы с послеигровым экраном, и мы планируем сосредоточиться на их устранении до конца этого года, заручившись поддержкой других команд. Сейчас мы работаем над тем, чтобы выявить основные проблемные места и определить, какие улучшения стоит внести.
- Повышение стабильности клиента в длительных сессиях. В конце прошлого года мы в экстренном порядке переключились на устранение утечек памяти, которые возникали, когда пользователи играли несколько матчей подряд или оставляли клиент открытым на долгое время. Изучив жалобы на ошибки в клиенте, мы заметили, что во многих случаях проблемы возникали только у игроков, которые оставляли клиент открытым и/или продолжали пользоваться им после того, как компьютер вышел из спящего режима. Сейчас мы планируем сделать так, чтобы клиент автоматически закрывался во время игры, если он потребляет слишком много памяти, и открывался заново после матча. Кроме того, клиент сам по себе станет стабильнее благодаря обновленному CEF.
На этом все! После обновления CEF мы впустим новую статью, в которой расскажем о результатах и планах на будущее.