intermediate

Browser caching

Комбинируйте HTTP cache, Cache Storage, immutable assets, validation, инвалидацию и offline-стратегию осознанно.

Кэширование в браузере включает HTTP cache, memory cache, disk cache, Cache Storage и прикладные кэши данных. Сильные ответы сочетают immutable hashed assets, валидацию изменяемых ресурсов, явную инвалидацию и стратегии service worker только там, где нужен offline или устойчивость.

					Cache-Control: public, max-age=31536000, immutable
# hashed build assets

Cache-Control: no-cache
# revalidate с ETag при каждом использовании
				

Не помечайте HTML shell долгоживущим immutable без жёсткой инвалидации при выкладке. Разделяйте публичные CDN-ассеты и private API responses.

На интервью: компромиссы cache-control, ETags, устаревший контент, CDN и auth-ответы.

Типовые ошибки: immutable HTML ловит старые выкладки; private data без Vary и инвалидации — утечки.

Компромисс: удобство против контроля — выбирайте механизм под вашу связность и бюджет производительности.

Чеклист:

  • Hash и immutable для статики.
  • Revalidate для изменяемых API.
  • Инвалидация при deploy и logout.
  • Private responses вне shared cache.