MINGKYME 블로그

무효화 [Purge] 구현 방법론

Purge 종류

Purge는 2가지 종류가 있다.

  • Hard Purge
    • 캐시 파일을 강제로 삭제하여, Cache 자체를 없애버린다.
  • Soft Purge
    • Cache 의 TTL을 0으로 조정한다. 만료된 것으로 취급하여, Revalidate 또는 Expired 로 나온다.

지금까지 말한 방법은 직접 파일을 수정하거나 삭제하는 방식이므로, wildcard purge가 불가능하다.

하지만, 대부분 CDN 서비스는 wildcard로 purge를 진행한다.

어떻게 처리하는 걸까?

메모리 DB를 따로 둬서 접속하는 URL이 rule에 맞다면 캐시 여부와 상관 없이 bypass 하는 구조도 가능하다.

단, 이렇게 구현 시, 요청 시간에 대한 정보도 같이 작성하여 1번이라도 renew가 된 정보에 대해서는 여러번 bypass가 되지 않게 해야한다.