ProIT: медіа для профі в IT
2 хв

Зміни Chrome BFCache можуть підвищити продуктивність

author avatar ProIT NEWS

Компанія Google вносить значні зміни у поведінку Chrome Back/Forward Cache (BFCache), даючи змогу вебсторінкам зберігатися в кеші, навіть якщо вебмайстер вказує не зберігати сторінку в кеші браузера. Про це повідомляє Bleeping Computer.

«bfcache – це кеш у пам’яті, який зберігає повний знімок сторінки, коли користувач переходить із неї», – зазначено на сайті Google web.dev.

Адміністратори сайту можуть вказати, як їхні вебсторінки мають зберігатися в кеші браузера, використовуючи заголовок «Cache-control:».

Одним із варіантів є використання заголовка «Cache-control: no-store», який запобігає збереженню відповіді вебсайту у браузері.

Однак браузери не зберігають вебсторінки у bfcache, якщо вони використовують цей заголовок. Це спричиняє проблеми із продуктивністю, коли користувачі повертаються до цих сторінок за допомогою кнопок браузера «Назад» і «Вперед».

Компанія Google пропонує зберігати вебсторінки у BFCache, навіть якщо на сторінках HTTPS присутній заголовок «Cache-control: no-store». Цей підхід збільшить кількість випадків миттєвої навігації назад/уперед.

У Google кажуть, що головна мета полягає не в тому, щоб запобігти відновленню сторінок, що містять конфіденційні дані. Натомість основна увага приділяється уникненню відновлення сторінок із конфіденційними даними, до яких користувач більше не повинен мати доступу.

Якщо немає змін у файлах cookie, припускається, що HTTP-запити браузера, а отже і рішення щодо доступу, залишаються послідовними. Проблема полягає у змінах на стороні сервера, які призводять до втрати доступу.

Для сайтів, які використовують такі технології, як EventSource, для відображення змін відкритих сторінок, ці оновлення ініціюватимуть вилучення із BFCache або доставлять події відразу після відновлення.

Для сайтів же без механізмів негайного оновлення існує ризик того, що користувачі можуть отримати доступ до застарілих даних, що потенційно може погіршити запропонована поведінка BFCache.

У Google працюють над вирішенням зазначених проблем, розгорнувши цю функцію, щоб спочатку перевірити канали й отримати достатньо даних для розуміння впливу.

Деякі фахівці висловлюють занепокоєння, що ця зміна може порушити обіцянки веброзробникам, які припускають, що заголовок «Cache-control: no-store» означає, що браузер не кешуватиме вебсторінку.

Однак у компанії переконані, що цей заголовок лише обіцяє не зберігати вебсторінку у звичайному кеші браузера, а не у bfcache.

«BFCache не є частиною HTTP-кешування, і розробники не повинні сприймати заголовок CCNS як обіцянку, що сторінка не буде BFCached», – йдеться у повідомленні.

Переробивши спосіб взаємодії BFCache із директивою «Cache-control: no-store», розробники Google Chrome сподіваються створити зручніший вебпереглядач без шкоди для безпеки та конфіденційності користувачів.

Нещодавно ми повідомляли, що фальшиві оновлення браузерів Safari та Chrome для Mac заражають AMOS.

Підписуйтеся на ProIT у Telegram, щоб не пропустити жодну публікацію!‌‌‌‌

Приєднатися до company logo
Продовжуючи, ти погоджуєшся з умовами Публічної оферти та Політикою конфіденційності.