Server fetch

캐시 옵션은 데이터 성격으로 선택한다

App Router의 fetch는 서버 컴포넌트 안에서 실행되고, cache와 next.revalidate 값에 따라 HTML 생성 시점과 갱신 주기가 달라집니다.

force-cache

공개 목록과 문서형 데이터

상품 카탈로그나 블로그 목록처럼 모든 사용자에게 같은 응답을 줄 때 서버 캐시가 초기 응답을 빠르게 만듭니다.

next.revalidate

주기적으로 바뀌는 데이터

가격, 공지, 랭킹처럼 일정 시간 뒤 새 응답이 필요한 데이터는 stale 응답을 먼저 보내고 백그라운드에서 갱신합니다.

no-store

요청마다 달라지는 화면

세션, 권한, 결제 상태처럼 사용자 요청에 묶인 값은 캐시에 남기지 않고 매 요청 서버에서 다시 읽습니다.

첫 요청 캐시 저장 stale 반환 백그라운드 갱신 다음 요청 반영