Какие плюсы и минусы кэширование ресурсов через HTTP-заголовки

«Какие плюсы и минусы кэширование ресурсов через HTTP-заголовки» — вопрос из категории Архитектура, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Плюсы:

  • Уменьшает нагрузку на сервер (меньше запросов)
  • Ускоряет загрузку страниц для пользователей (ресурсы берутся из кэша)
  • Гибкость настройки (Cache-Control, ETag, Expires)
  • Простота реализации (настраивается на сервере)

Минусы:

  • Риск устаревшего контента (пользователи могут не получить актуальную версию)
  • Требует правильной настройки (некорректные TTL могут навредить)
  • Усложняет отладку (нужно чистить кэш при разработке)

Пример настройки Cache-Control в Nginx:

location ~* .(js|css|png)$ {
  expires 30d;
  add_header Cache-Control "public, no-transform";
}