MINGKYME 블로그

무효화 [Purge]

개요

무효화란? Origin의 컨텐츠가 변경된 것을 CDN 서버들(Edge + Relay)에 알리는 역할을 한다.

무효화의 필요성

새로운 컨텐츠가 같은 URL인 경우, Edge 서버와 Relay 서버에서는 자신이 Cache 하고 있는 컨텐츠를 반환할 것이다.

이 때, 여러 이슈로 인해 Expired가 되기 전에 컨텐츠를 교체하는 일이 발생 할 수 있다.

  • 잘못된 이미지 cache로 인해 갱신
  • 신상정보 노출 등으로 인핸 갱신
  • 이벤트 마감으로 인한 갱신

등등이 있다.

무효화 순서

무효화를 하기 위해서는 순서가 중요하다.

캐시를 제거하는 중에 old된 컨텐츠를 재 갱신할 수 있기 때문이다.

Client -> Edge -> Relay -> Origin 순이라면

Relay를 모두 성공하고 난 뒤, Edge를 무효화 해야한다.

무효화 방법

무효화를 위한 방법은 크게 2가지가 존재한다.

  1. Cache 삭제 무효화
  2. TTL 무효화

1. Cache 삭제 무효화

Cache 파일을 삭제하여, 해당 서버에 Cache가 없는 상태로 만들어 버린다.

다음 요청에서는 MISS 했다고 판단 다음 서버로 넘어가게 된다. (Edge -> Relay, Relay -> Origin)

2. TTL 무효화

Cache를 삭제하지 않고, 만료된 것으로 만든다. (Expired)

해당 무효화의 장점은 Header를 통해 revaildate가 가능하다.

즉, Header 정보를 이용하여, 서버가 가지고 있는 컨텐츠가 갱신이 필요한지 여부를 확인하여 필요시에만 갱신한다.

  • 갱신이 필요 O, Expired
  • 갱신이 필요 X, Revaildate

이렇게 사용된다.