동일한 이미지 URL의 각 POP에서 CDN 캐시 누락
이 문서에서는 캐시 제어 헤더가 24시간 TTL을 지정하고 예상 CDN 캐싱 동작에 대한 지침을 제공하더라도 Adobe Experience Manager as a Cloud Service의 서블릿에 의해 제공되는 이미지가 다른 CDN POP(Points of Presence)에서 CDN 캐시 누락으로 이어지는 이유를 설명합니다.
설명 description
환경
Adobe Experience Manager as a Cloud Service (모든 버전)
문제/증상
서블릿은 스토어 페이지에 대한 JPEG 이미지를 반환하고 Cache-Control: max-age=86400 헤더(24시간)를 설정합니다. 그러나 CDN 로그는 다른 CDN 위치(POP)에서 캐시 상태 MISS를 사용하여 하루 내에 게시 인스턴스에서 동일한 이미지 URL을 여러 번 가져온다는 것을 보여 줍니다.
로그 항목의 예:
/path/sample.jpg의 POP "RTM"에서 캐시 누락/path/sample.jpg의 POP "TOJ"에서 캐시 누락
예상은 이미지가 POP와 관계없이 첫 번째 요청 후 24시간 동안 CDN에서 캐시되고 제공된다는 것입니다. 대신 각 POP는 이미지에 대한 첫 번째 요청에서 캐시 누락을 경험합니다.
원인
각 CDN POP는 자체 캐시를 운영합니다. 각 POP에서 리소스에 대한 첫 번째 요청으로 인해 MISS가 발생하고, TTL이 만료될 때까지 해당 POP의 후속 요청만 캐시에서 제공됩니다.
해결 방법 resolution
문제를 해결하려면 다음 단계를 수행합니다.
- 각 CDN POP가 자체 캐시를 유지 관리함을 이해합니다. 각 POP에서 주어진 URL에 대한 첫 번째 요청으로 인해 캐시 누락이 발생하고, 동일한 POP의 후속 요청(TTL이 유효한 동안)은 캐시 히트가 됩니다.
- 서블릿이 브라우저와 CDN 모두에 대해 명시적 캐시 헤더를 설정하는지 확인합니다.
Cache-Control: max-age=86400, public을(를) 사용하고 지원되는 경우 CDN별 TTL에Surrogate-Control또는s-maxage을(를) 추가해 보십시오. - CDN 캐싱을 방지하므로
private또는no-store지시문을 사용하지 마십시오. curl과(와) 같은 도구를 사용하고 CDN 로그를 검토하여 각 POP의 첫 번째 요청이 MISS이고 TTL 내 동일한 POP의 후속 요청이 HIT인지 확인하십시오.
자세한 내용은 AEM as a Cloud Service CDN 캐싱 설명서를 참조하십시오.
recommendation-more-help
experience-cloud-kcs-help-kbarticles