
198
HTTP
2
부 HTTP 아키텍처
7.7
캐시 처리 단계
오늘날 상용 프락시 캐시는 꽤 복잡하다. 매우 고성능이면서도 HTTP와 그 외 다른
기술의 고급 기능을 지원하도록 만들어졌다. 그러나 몇 군데 미묘한 구석이 있긴
하지만, 웹 캐시의 기본적인 동작은 대개 단순하다. HTTP GET 메시지 하나를 처리
하는 기본적인 캐시 처리 절차는 일곱 단계로 이루어져 있다(그림 7-11에 묘사되어
있다).
1. 요청 받기 - 캐시는 네트워크로부터 도착한 요청 메시지를 읽는다.
2. 파싱 - 캐시는 메시지를 파싱하여 URL과 헤더들을 추출한다.
3. 검색 - 캐시는 로컬 복사본이 있는지 검사하고, 사본이 없다면 사본을 받아온
다(그리고 로컬에 저장한다).
4. 신선도 검사 - 캐시는 캐시된 사본이 충분히 신선한지 검사하고, 신선하지 않
다면 변경사항이 있는지 서버에게 물어본다.
5. 응답 생성 - 캐시는 새로운 헤더와 캐시된 본문으로 응답 메시지를 만든다.
6. 발송 - 캐시는 네트워크를 통해 응답을 클라이언트에게 돌려준다.
7. 로깅 - 선택적으로, 캐시는 로그파일에 트랜잭션에 대해 서술한 로그 하나를
남긴다.
그림
7
-
11
신선 캐시 적중의 처리
GET /www.joes-hardware.com/index.html HTTP/1.1
User-agent: ...