После выхода обновления десктопного Chrome с индексом 68 компания Google реализовала новый API под названием Page Lifecycle («Жизненный цикл страницы»), благодаря которому браузер может потреблять меньше оперативной памяти. Загвоздка заключается в том, что разработчики веб-сайтов должны использовать этот программный интерфейс — в противном случае, веб-обозреватель продолжит работать как раньше.
Принцип работы браузера с вкладками сайтов на основе Page Lifecycle API аналогичен взаимодействию Android с фоновыми приложениями. Неактивные веб-страницы «замораживаются», благодаря чему браузер не тратит системные ресурсы (оперативную память) на их поддержание. Некоторые веб-обозреватели останавливают фоновые вкладки самостоятельно. Точно также мог бы работать и Chrome, но в Google отказались от этого сценария: тяжёлые сайты не «готовы» к тому, чтобы их «заморозили» — при открытии после принудительной остановки они начинают перезагружаться. Page Lifecycle API позволяет разработчикам создавать сайты таким образом, чтобы они не выходили из строя после «заморозки».
Chrome для компьютеров начал потреблять ещё больше оперативной памяти после внедрения режима безопасности Site Isolation (изоляция сайтов) в версии браузера 67. Он создан для борьбы с угрозами класса Spectre. Возможно, Google задумалась о «заморозке» неактивных вкладок как раз для того, чтобы вернуть потребление веб-обозревателем ресурсов хотя бы до прежнего уровня. Однако использование Page Lifecycle API необязательно — если этот программный интерфейс не реализован на конкретном сайте, вкладка с ним не будет «замораживаться». Иными словами, разработчики вряд ли будут тратить время и силы на внедрение нового API. Возможно, в будущем Chrome будет принудительно останавливать работу всех фоновых вкладок и разработчикам придётся применять Page Lifecycle API для того, чтобы их сайты работали нормально, но пока это не так.
Напомним, Chrome 68 начал отмечать HTTP-сайты как небезопасные.
Как говорится — сосатб