오봉이와 함께하는 개발 블로그

HTTP - 캐시 기본 동작 본문

이론

HTTP - 캐시 기본 동작

오봉봉이 2022. 8. 8. 01:49
728x90

캐시 기본 동작

캐시가 없을 때

  • 브라우저에서 star.jpg를 다운로드 받았다.

  • 두 번째 요청을 캐시가 없기 때문에 첫 번째 요청과 똑같은 응답을 다시 내려줬다.

  • 브라우저에서 star.jpg를 다운로드 받았다.

  • 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다.

  • 인터넷 네트워크는 매우 느리고 비싸다.

  • 브라우저 로딩 속도가 느리다.

  • 느린 사용자 경험을 준다.

캐시 적용

  • cache-control: max-age=60를 통해 최대 60초간 캐시에 저장하도록 한다.

  • 두 번째 요청할 때는 캐시를 먼저 검색해서 유효 시간을 검증하고 유효 시간이 지나지 않았으면 캐시 저장소에서 조회한다.

  • 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다.
  • 비싼 네트워크 사용량을 줄일 수 있다.
  • 브라우저 로딩 속도가 매우 빠르다.
  • 빠른 사용자 경험을 준다.

캐시 시간 초과

  • 캐시 유효 시간이 지났기 때문에 똑같은 서버에 똑같은 요청을 다시 한다.

  • 똑같은 요청에 대한 결과를 받아서 다시 캐시에 저장한다.

  • 캐시 유효 시간이 초과하면, 서버를 통해 데이터를 다시 조회하고 캐시를 갱신한다.

  • 이때 다시 네트워크 다운로드가 발생한다.

의문

캐시 시간이 초과되어 다시 다운로드를 서버에서 기존 데이터를 변경하지 않았다면 불필요하게 다시 다운로드 받을 필요가 있을까?

인프런 김영한 지식 공유자님의 강의 - 모든 개발자를 위한 HTTP 웹 기본 지식
728x90
Comments