intermediate

CloudFront

Раздавайте кэшированный статический и динамический контент с edge-локаций с origin policy, invalidation, TLS и security headers.

CloudFront — CDN AWS: edge-локации кэшируют ответы ближе к пользователям. Origin — S3, ALB, API Gateway или свой HTTP-сервер. FullStack-команда ускоряет статику Next.js, осторожно кэширует GET API и завершает TLS на edge.

| Управление | Эффект | |------------|--------| | Cache policy | TTL, заголовки в ключе кэша, поведение query string | | Origin request policy | Какие headers/cookies доходят до origin | | OAC / OAI | Приватный S3 без публичных bucket | | Invalidation | Сброс путей после деплоя — растёт стоимость |

Разделяйте behaviors для `/_next/static` и динамического HTML. Security headers (HSTS, CSP) — через response headers policy. Access logs или real-time logs помогают разбирать cache miss.

На интервью: дизайн cache key, stale-while-revalidate, signed URL/cookies, WAF на edge и почему нельзя слепо кэшировать authenticated API.

Типовые ошибки: кэш ответов с `Set-Cookie`; длинный TTL на HTML при активной разработке; origin в интернете, когда к нему должен ходить только CloudFront; игнор тарифов по регионам.

Компромисс — глобальная latency и разгрузка origin против сложности invalidation и отладки распределённого поведения.

Чеклист:

  • Отдельные behaviors для статики и динамических маршрутов.
  • S3 за OAC; security groups origin только для CloudFront.
  • TTL и cache keys под семантику API.
  • Авто-invalidation или версионирование имён ассетов.