Экспериментальная функция Chrome позволяет снизить энергопотребление браузера

2020-07-06 7928 комментарии
Инженеры Chrome решили проанализировать «работу популярных сайтов в фоновом режиме» и выяснили, что наибольшую нагрузку оказывают таймеры JavaScript, которые обычно «не представляют интерес для пользователя»

Веб-браузеры являются довольно ресурсоемким ПО, и их активное использование приводит к стремительному падению заряда аккумулятора на портативных устройствах, таких как ноутбуки. Частично данную проблему решают блокировщики рекламы, контент-фильтры и другие расширения, которые блокируют некоторые элементы, чтобы сэкономить энергию. Однако, для большинства пользователей данная проблема остается актуальной и достаточно острой.

За последние несколько месяцев Google проводил эксперименты в Chrome по ограничению работы JavaScript в фоновых вкладках, что должно положительно сказаться на энергопотреблении браузера.

Инженеры Chrome решили проанализировать «работу популярных сайтов в фоновом режиме» и выяснили, что наибольшую нагрузку оказывают таймеры JavaScript, которые обычно «не представляют интерес для пользователя».

Основная идея заключается в снижении количества запросов от таймеров JavaScript в фоновых вкладках. На данный момент в стабильных версиях Chrome действуют ограничения на 1 срабатывание JavaScript в секунду.

Google провел несколько экспериментов с целью выяснить, смогут ли дополнительные ограничения выполнения JavaScript улучшить автономность работы портативных устройств.

Эксперимент 1: 36 популярных сайтов в фоновых вкладках, в основной вкладке открыта страница about:config

  • Стандартное состояние: среднее время работы 6.4 часов
  • Введены ограничения JavaScript: среднее время работы 8.2 часов

Эксперимент 2: 36 популярных сайтов в фоновых вкладках, в основной вкладке открыт Youtube

  • Стандартное состояние: среднее время работы 4.7 часов
  • Введены ограничения JavaScript: среднее время работы 5.3 часов

Название флага: Throttle Javascript timers in background

Новый экспериментальный флаг уже доступен в Chrome Canary и будет включен по умолчанию в будущих тестовых версиях.

Описание флага: при включении флага вызовы DOM таймеров будут ограничены одним вызовом в минуту для страниц, которые остаются скрытыми более 5 минут.

Throttle Javascript timers in background

Чтобы включить флаг, выполните следующие шаги:

  • Перейдите на внутреннюю страницу chrome://flags в Chrome
  • Выполните поиск флага Throttle Javascript timers in background
  • Установите значение для флага Enabled
  • Перезапустите Chrome

Google Chrome теперь будет ограничивать таймеры JavaScript на фоновых страницах автоматически. Ограничение будет применяться к страницам, которые оставались в фоновом режиме более 5 минут.

Функция может быть представлена уже в Chrome 86 Stable.

Google планирует представить корпоративную политику для отключения данного поведения. Основная цель политики заключается в том, чтобы предоставить администраторам возможность отключить данное ограничение, если оно нарушает функциональность.

Компания проведет дополнительные тесты, чтобы выяснить, не нарушат ли данные изменения определенные функции на сайтах.

Другие браузеры на базе Chromium, такие как Microsoft Edge, VivaldiBrave и Opera, также получат эту функцию, если разработчики браузеров не отключат ее принудительно. Вполне вероятно, что в будущем Mozilla сможет реализовывать подобное ограничение в веб-браузере Firefox.

Улучшения, связанные с продлением времени автономной работы, всегда приветствуются пользователями. В данном случае относительно небольшие изменения позволяют значительно увеличить срок работы портативного устройства от аккумулятора.

© .
Комментарии и отзывы

Нашли ошибку?

Новое на сайте