Пользователи YouTube жалуются на зависания браузеров, рывки видео и резкий рост потребления оперативной памяти. Судя по сообщениям на Reddit и в браузерных форумах, проблема затрагивает Firefox, Brave и Microsoft Edge. В отдельных случаях одна вкладка с YouTube могла съедать больше 7 ГБ RAM.
Сначала многие решили, что дело в блокировщиках рекламы или свежих обновлениях браузеров. Но затем похожие жалобы появились у пользователей разных движков, и внимание всё больше сместилось в сторону самого YouTube.
По данным обсуждений в Bugzilla, разработчики Mozilla нашли возможную причину в интерфейсном коде YouTube. Речь идёт о блоке кнопок под видеоплеером — там, где находятся Like, Dislike, Share и другие элементы управления.
Судя по описанию, интерфейс постоянно проверяет, помещаются ли все кнопки в доступную ширину. Если места не хватает, YouTube скрывает одну из кнопок. Но после этого ширина контейнера меняется, и система снова решает, что место появилось. Кнопка возвращается, элементы опять не помещаются, и так по кругу.
Визуально это может выглядеть почти незаметно, но для браузера такой цикл очень тяжёлый. Страница снова и снова заставляет его пересчитывать расположение элементов, перерисовывать интерфейс и обновлять состояние рендеринга. Такой эффект часто называют layout thrashing или reflow loop.
В результате процессор начинает работать на полную, вкладка зависает, видео заикается, а память быстро расходуется. Некоторые пользователи публиковали скриншоты, где ядра CPU были загружены почти полностью именно во время просмотра YouTube.
Пока универсального исправления нет. Разработчики Mozilla продолжают разбираться в проблеме, а Google и YouTube публично не подтверждали точную причину сбоя. Но тот факт, что баг проявляется и в Firefox, и в браузерах на Chromium, усиливает версию о проблеме на стороне интерфейса YouTube.