ㅁ 풀어야 할 문제
- Cache Distribution 패턴을 사용해 콘텐츠를 배포하는 경우, 마스터 서버의 파일을 변경해도 에지 서버(캐시 서버)의 데이터는 타임 아웃이 될 때까지 갱신되지 않음
- 원하는 타이밍에 파일을 갱신하려고 할 때에는 사용 불가
ㅁ 해결/패턴
- 에지 서버의 캐시 데이터는 그 쪽에 액세스하는 URL이 키가 됨
- 갱신하려고 하는 파일을 다른 파일명으로 배치하고 액세스 URL 자체를 변경하면, 에지 서버의 캐시 타임 아웃에 상관없이 새로운 콘텐츠 배포 가능
- 콘텐츠와는 별도로 기본 콘텐츠(액세스 URL을 포함한 HTML 파일 등)를 만든다.
- 기본 콘텐츠는 캐시 타임아웃을 짧게 하거나 계속 마스터 서버에서 배포
- CloudFront로 배포하는 콘텐츠를 갱신하는 경우, 그 콘텐츠를 다른 이름으로 마스터 서버에 저장
- 기본 콘텐츠 내의 URL을 새로운 콘텐츠 URL로 변경
- 마스터 서버의 콘텐츠 변경에 있어 캐시 타임아웃을 기다리지 않고 새로운 콘텐츠를 배포 할 수 있다.
- 기본 콘텐츠 자체의 캐시 타임아웃이 길면 효과가 없기 때문에 기본 콘텐츠의 캐시 타임아웃을 짧게 설정해야 하지만, 그렇게 하면 기본 콘텐츠의 캐시 효과가 줄어듦
- 이전 파일은 캐시 타임아웃까지 에지 서버에 남아서 URL을 직접 지정할 때 다운로드가 가능한 경우가 있다. 필요하다면 파일을 지우거나 비활성화 기능(invalidation이라함)을 이용하면 됨
'AWS Design Pattern > 정적 콘텐츠 처리 패턴' 카테고리의 다른 글
Private Cache Distribution - CDN을 이용한 프라이빗 배포 (0) | 2021.02.05 |
---|---|
Cache Distribution - 사용자와 물리적으로 가까운 위치에 데이터 배치 (0) | 2021.02.05 |
Private Distribution - 특정 사용자에게 데이터 배포 (0) | 2021.02.05 |
Direct Hosting - 인터넷 스토리지 직접 호스팅 (0) | 2021.02.05 |
WEB Storage 패턴 - 고가용성의 인터넷 스토리지 활용 (0) | 2021.02.05 |