LINUX.ORG.RU

Разработчики Chrome намерены перейти к полной остановке выполнения фоновых вкладок, а также дальнейшие планы Google на Google Chrome

 ,


2

4

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

Первым шагом стала реализация в Chrome 57 расширенного механизма приостановки генерации событий таймера для фоновых вкладок. Если ранее генерация событий таймера для активации обработчиков в фоновых вкладках снижалась до одного запуска в секунду, то в Chrome 57 применены новые правила, которые дополнительно приостанавливают таймер, если фоновое web-приложение потребляет достаточно много ресурсов CPU. Задержка события от таймера выбирается с расчётом, чтобы общая нагрузка на CPU от фоновой вкладки не превышала 1%.

В частности, каждой фоновой вкладке теперь выделяется определённый бюджет времени в секундах, который расходуется на запуск таймеров. При каждом запуске таймера из бюджета вычитается процессорное время, потраченное на выполнение обработчика. При этом бюджет также непрерывно пополняется на 0.01 в секунду (значение можно изменить в настройках). Как только бюджет примет отрицательное значение, вызов обработчиков по таймеру прекращается.

Ограничение начитает применяться не сразу, а через 10 секунд после нахождения вкладки в фоне (даётся время на инициализацию вкладок, сразу открываемых в фоне). Ограничение также не распространяется на фоновые вкладки, в которых используется API для воспроизведения звука, WebSockets или WebRTC. Для выполнения таких задач как обработка push-уведомлений и перерисовка заголовка страницы или картинки favicon, предлагается использовать Service Workers. Для пользователя предусмотрена возможность отключения урезания активности фоновых вкладок через запуск браузера с опцией --disable-background-timer-throttling.

Эксперименты показали, что внедрённый метод на 25 % снижает нагрузку от фоновых вкладок, интенсивно нагружающих процессор. По мнению разработчиков, данный показатель можно значительно улучшить, так как по предварительной оценке фоновые вкладки потребляют почти треть всех расходуемых браузером ресурсов CPU. Для большего снижения нагрузки web-разработчикам рекомендуется использовать Page visibility API для отключения лишних работ, таких как перерисовка содержимого, в то время, когда страница находится в фоне.

В идеале разработчики намерены в будущем перейти к полной остановке фоновых вкладок с выносом всех фоновых работ на обработчики, использующие API Service Workers, вместо привязки к активации по таймеру. Подобный подход позволит существенно снизить энергопотребление, что положительно скажется на времени работы портативных устройств в автономном режиме, сохранив при этом возможность выполнения фоновых обработчиков. Кроме того, при полной остановке вкладок становится возможным реализация дополнительных техник оптимизации, например, можно высвобождать занятую неактивными вкладками память.

План дальнейшего развития инициативы:

  • Во втором квартале 2017 года планируется реализовать серию опций, предоставляющих разработчикам web-приложений средства для отключения агрессивного урезания активности фоновых вкладок, на время пока не будет завершена работа над API для обеспечения фоновых работ.
  • Во втором квартале 2017 года планируется по умолчанию останавливать все фоновые задачи на мобильных устройствах. В настоящее время генерация событий таймера прекращается, если задача находятся в фоне более 5 минут. Для продления автономной работы и блокирования лишнего трафика планируется блокировать все фоновые задачи.
  • Во втором квартале 2017 года планируется ввести ограничения для фоновых задач, активируемых не по таймеру. В настоящее время ограничения действуют только на задачи, вызываемые через таймер и не распространяются на задачи, манипулирующие загрузкой данных. Планируется разработать методы блокировки и для задач, выполняющих загрузку данных, при этом предоставив средства для корректной начальной загрузки страниц в фоновых вкладках.
  • В третьем квартале 2017 года вышеописанная система на основе расходования лимитированного бюджета будет распространена на компоненты, связанные с частями страницы, не попадающими в видимую область экрана.
  • В 2018 году планируется разработать и внедрить ограничения для Web Workers, предварительно изучив их влияние на потребление энергии.
  • На 2018 год намечен переход к полной остановке всех фоновых вкладок после N минут нахождения в фоне. Разработчикам web-приложений будет предоставлен обходной путь для выборочного отключения ограничения.
  • В 2020 году или позднее разработчики Chrome намерены убрать опцию для продолжения работы в фоне в обход ограничений. Все фоновые страницы будут останавливаться без обходных вариантов. Данная стадия будет воплощена в жизнь только после создания API, учитывающего все потребности в выполнении фоновых работ, а также после предоставления значительного времени на внедрение данного API.

Перевод взят с opennet.ru.

>>> Источник (блог Google)



Проверено: Aceler ()
Последнее исправление: sudopacman (всего исправлений: 4)
Ответ на: комментарий от NextGenenration

Не можешь. Любые действия сложнее следующий/предыдущий, пауза/воспроизведения просто будут вынуждать тебя на что-то да переключится.

У меня в плеере плейлисты, я могу по хоткею переключаться между сохраненными плейлистами не вызывая окошко плеера. При надобности окошко плеера вызывается так же по хоткею, добавить / удалить треки можно гораздо быстрее чем в браузере. Онлайн радио плеер забирает из icecast. Комбайны типа амарока/мандаринки умеют играть музыку из втентакля и прочей веб помойки. При этом имеем адекватный интерфейс проигрывателя, который не зависит от желания владельца веб помойки.

Karrham
()
Ответ на: комментарий от NextGenenration

Тут обсуждалось в контексте использования браузера и плеера. Консольщики КМК юзают mpd. Там даже покидать комнату консоль не нужно.

Karrham
()
Ответ на: комментарий от Karrham

допустим, ты собрался послушать дискографию Димы Билана, скачал, включил плеер и не спишь три дня

я мне надо другое 1. Вот зашёл на сайт и глянул что там нового накрапали уже в этом году, куча групп, никого не знаю, тыкаю по песне с диска, чтоб иметь представление что там 2. Жена не помнит ни песню, ни исполнителя, но очень хочет это услышать. Забиваешь в Гугл несколько слов из тех, что ей запомнились, находишь певца и тут же слушаешь. Ну где я ей на своём компе найду Ваенгу???

А так, ежели ностальгия, то заряжаю Physical Graffiti в mplayer, и переключать то там ничего не надо, всё подряд и идёт.

anonymous
()
Ответ на: комментарий от Karrham

Просто того что я вживую видел только как один человек предпочитающий клавиатуру мышеке работал с текстом в visual studio. Понятие не имею насколько vim фичастее, но мне глядя на него даже и желания не возникало попробовать тоже. вот и стало интересно как те кто предпочитают клавиатуру будут переключаться между альбомами. Ибо я о использовании только клавиатуры знаю не много.

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

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

tentakle
()
Ответ на: комментарий от tentakle

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

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

kss ★★★★★
()
Ответ на: комментарий от kss

покупка клавиатуры с мультимедийными клавишами

Осталось только купить просто плеер. Тут о хоткеях говорят, а не о клавиатурах, добрый вечер.

tentakle
()
Ответ на: комментарий от tentakle

Ну к примеру в KDE при настройке хоткеев если назначить на разные действия одинаковые хоткеи, получим уведомление, что есть конфликт. Все уже придумано до вас

Karrham
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.