핵심 요약
- 클라우드플레어가 HTTP 규격 중 다루기 까다롭기로 유명한 'Vary' 헤더 제어 기능을 모든 요금제에 공식 도입했습니다.
- Vary 헤더는 요청 헤더의 미세한 차이로 인해 수천 개의 무의미한 캐시 파편을 만들어 캐시 효율을 망가뜨리는 원인으로 지적받아 왔습니다.
- 이제 사용자는 캐시 규칙 설정을 통해 무분별한 캐시 생성을 막고 헤더를 정규화해 효율적으로 관리할 수 있게 되었습니다.
요약 인터넷 인프라 기업 클라우드플레어(Cloudflare)가 HTTP 스펙 중 엔지니어들 사이에서 악명 높은 'Vary' 헤더 지원 기능을 정식 출시했다고 밝혔습니다. Vary 헤더는 웹 서버가 동일한 URL이라도 브라우저 종류, 지원 언어, 압축 방식 등에 따라 서로 다른 콘텐츠를 제공할 때 중간 캐시 서버(CDN 등)에 어떤 요청 헤더를 기준으로 구별해야 하는지 알려주는 표준 기술입니다.
하지만 실무에서 Vary 헤더는 극단적인 캐시 파편화를 일으키는 주범으로 꼽혀왔습니다. 예를 들어 서버가 영어와 프랑스어 두 가지만 지원하더라도, 사용자 브라우저마다 'Accept-Language' 헤더의 언어 순서나 세부 가중치가 조금씩 다르면 캐시 서버는 이를 서로 다른 수천 개의 변형으로 인식해 별개의 캐시 슬롯을 만듭니다. 이로 인해 동일한 데이터임에도 캐시 적중률(Hit Ratio)이 곤두박질치고 사실상 캐시가 무력화되는 문제가 발생했습니다.
클라우드플레어가 5만여 개 인기 사이트의 1억 2천만 건 응답을 분석한 결과, 3천 개에 달하는 사이트가 4개 이상의 헤더에 Vary를 적용하고 있었으며 심한 곳은 47개 헤더에 거는 경우도 있었습니다. 클라우드플레어는 이러한 비효율을 해결하기 위해 모든 요금제 사용자가 '캐시 규칙(Cache Rules)'을 통해 Vary 헤더를 정규화하거나 무시할 수 있는 제어 기능을 제공하기 시작했습니다.
Sponsored · 광고