cachebrowser

HTTP cache가 어떻게 동작하는지 설명해 주세요

예상 시간
6
30초 답변

꼬리질문

조금 더 깊게 물어본다면

답변 뒤에 이어질 수 있는 질문들을 하나씩 열어볼 수 있어요.

no-cache는 캐시하지 말라는 뜻인가요?

부가 설명

캐시는 크게 두 단계로 생각하면 편합니다. 먼저 “아직 신선한가?”를 봅니다. max-age 안에 있으면 fresh cache라서 바로 재사용할 수 있습니다.

기간이 지나 stale 상태가 되면 서버에 확인합니다. 이때 If-None-MatchIf-Modified-Since 같은 조건부 요청을 보내고, 서버가 바뀌지 않았다고 판단하면 304를 내려줍니다. 그러면 브라우저는 기존 캐시 본문을 다시 씁니다.

한 줄 정리

HTTP cache는 “바로 재사용할 수 있는 fresh cache”와 “서버에 바뀌었는지 물어보고 재사용하는 validation”을 나눠서 설명하면 됩니다.