cacheControl 옵션을 추가하여 SSR 페이지 응답에 Cache-Control 헤더를 설정할 수 있습니다.
기본 사용법
registerSSR에 추가
SSR 캐싱 전략
SSR 프리셋
가장 권장하는 방법은CachePresets.ssr을 사용하는 것입니다.
작동 방식
장점:- 대부분의 요청이 즉시 응답 (CDN 캐시)
- Stale 기간에도 빠른 응답
- 백그라운드 갱신으로 항상 최신 상태 유지
페이지 유형별 전략
- 동적 페이지
- 준동적 페이지
- 정적 페이지
- 개인화 페이지
자주 변경되는 콘텐츠
실전 예제
1. 전자상거래 사이트
2. 블로그
3. SaaS 대시보드
CSR Fallback
SSR 라우트에 매칭되지 않는 모든 요청은 CSR fallback으로 처리됩니다.전역 핸들러
모든 SSR 페이지에 일괄적으로 Cache-Control을 적용할 수 있습니다.SSRRoute 객체 활용
우선순위
SSR Cache-Control 설정은 다음 순서로 적용됩니다:- registerSSR의 cacheControl (가장 우선)
- cacheControlHandler 반환값
- 기본값 (Cache-Control 헤더 없음)
Vary 헤더
다국어 SSR 페이지에서 Vary 헤더를 사용합니다.CDN 최적화
CloudFront + Stale-While-Revalidate
AWS CloudFront는stale-while-revalidate를 지원합니다.
- 브라우저: 1분마다 CDN 요청
- CDN: 5분마다 서버 요청
- Stale: 최대 15분(5분 + 10분) 동안 빠른 응답
정적 자산과 조합
- HTML: 10초마다 갱신 (최신 콘텐츠)
- JS/CSS: 1년 캐시 (빠른 로딩)
프리로딩과 캐싱
SSR의preload 기능과 Cache-Control을 조합합니다.
- SSR 시: 서버에서 데이터 프리로드 → HTML 생성 → 캐싱
- 캐시 히트: CDN에서 즉시 HTML 반환 (빠름)
- Hydration: 클라이언트에서 프리로드된 데이터 사용
개인화 페이지 처리
인증 필요한 페이지
조건부 SSR
사용자 상태에 따라 다른 페이지를 렌더링하는 경우:주의사항
디버깅
Cache-Control 헤더 확인
브라우저 개발자 도구에서 확인:CDN 캐시 상태
CDN별로 캐시 상태 헤더를 제공합니다: CloudFront:다음 단계
Cache-Control이란?
HTTP 캐싱 기본 개념
Cache Presets
사전 정의된 캐시 설정
API에서 사용하기
@api 데코레이터에 적용