✊ 필오의 개발일지
Back to Posts
2019년 9월 30일

캐시의 개념과 장점

캐시의 개념과 장점

캐시는 자주 쓰이는 문서의 사본을 자동으로 보관하는 HTTP 장치다. 웹 요청이 캐시에 도착했을 때, 캐시된 로컬 사본이 존재한다면, 그 문서는 원서버가 아니라 캐시로부터 제공된다.


1. 불필요한 데이터 전송


2. 대역폭 병목


3. 갑작스런 요청 쇄도

음?


4. 거리로 인한 지연

보스턴과 샌프란시스코 사이의 거리는 약 4,400km이다. 어떤 웹페이자가 20개의 작은 이미지를 포함하고 있는데, 모두가 샌프란시스코에 있는 한 서버에 들어있다고 가정해보자. 보스턴에 있는 클라가 서버로 동시에 4개의 커넥션을 열고, 그 커넥션을 유지한다면, 다운 받을 때의 빛의 속도로 인한 지연은 거의 1/4초가 된다.(240밀리초) 만약 서버가 보스턴에서 더 멀리 10,800km 떨어진 도쿄라면 600밀리초로 커진다.


5. 적중과 부적중

5.1 재검사 Revalidation (신선도 검사)

재검사 적중 (느린 적중)

If-Modified-Since 헤더

오늘은 9월 30일이다. 27일에 캐시되어있던 파일이며, 해당 시간 이후의 사본의 신선도를 확인한다.

If-Modified-Since 요청이 서버에 도착했을 때 일어날 수 있는 3가지 상황

  1. 서버 콘텐츠가 변경되지 않을 경우
  2. 서버 콘텐츠가 변경된 경우
  3. 객체가 삭제된 경우

  1. 재검사 적중: 만약 서버객체가 변경되지 않았다면, 서버는 클라에게 작은 HTTP 304 Not Modified 응답을 보낸다.
  1. 재검사 부적중: 만약 서버 객체가 캐시된 사본과 다르다면, 서버는 콘텐츠 전체와 함께 평범한 HTTP 200 OK 응답을 클라에게 보낸다.
  2. 객체 삭제: 404 Not Found 응답을 돌려보내며, 캐시는 사본을 삭제한다.

문서적중률과 바이트 단위 적중률은 둘다 캐시 성능에 대한 유용한 지표다.

5.2 적중률 (문서 적중률)

캐시가 요청을 처리하는 비율을 캐시 적중률 혹은 문서 적중률이라고 부르기도 한다.

실제 적중률은

5.3 바이트 적중률


5.4 적중과 부적중의 구별

클라가 응답이 캐시에서 왔는지 알아내는 한가지 방법은 Date 헤더를 이용하는 것이다.


6. 캐시 토폴로지

토폴로지(영어: topology, 문화어: 망구성방식)는 컴퓨터 네트워크의 요소들(링크, 노드 등)을 물리적으로 연결해 놓은 것, 또는 그 연결 방식을 말한다. 로컬 영역 네트워크(LAN)은 물리적 토폴로지와 논리적 토폴로지 둘 다 보여 줄 수 있는 네트워크의 한 예이다. 출처 

6.1 개인 전용 캐시

6.2 공용 프락시 캐시

6.3 프락시 캐시 계층들

6.4 캐시망, 콘텐츠 라우팅, 피어링

잘 모르겠다.

캐시망

캐시망의 프락시 캐시는 어떤 부모 캐시와 대화할 것인지, 아니면 요청이 캐시를 완전히 우회해서 원 서버로 바로 가도록 할 것인지에 대한 캐시 커뮤니케이션 결정을 동적으로 내린다.

콘텐츠 라우팅

캐시망 안에서의 콘텐츠 라우팅을 위해 설계된 캐시들은 다음에 나열된 일들을 모두 할 수 있을 것이다.

형제 캐시



참고자료

  1. 네트워크 토폴리지 
Previous캐시의 원리와 제어방법
Next웹에서 앱으로 이동하기 (feat.딥링크)

Related

© 2026 Felix