콘텐츠 전송 방법 CloudFront - 아마존 CloudFront

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

콘텐츠 전송 방법 CloudFront

초기 설정을 완료하면 웹 사이트 또는 애플리케이션과 CloudFront 연동하여 콘텐츠 전송 속도를 높일 수 있습니다. 이 섹션에서는 시청자가 콘텐츠를 요청할 때 콘텐츠를 CloudFront 제공하는 방법을 설명합니다.

사용자에게 콘텐츠를 CloudFront 제공하는 방법

콘텐츠를 CloudFront 전달하도록 구성한 후 사용자가 객체를 요청하면 다음과 같은 상황이 발생합니다.

  1. 사용자가 웹 사이트 또는 애플리케이션에 액세스하고 이미지 파일 및 HTML 파일 같은 하나 이상의 객체에 대한 요청을 보냅니다.

  2. DNS는 요청을 가장 잘 처리할 수 있는 CloudFront POP (엣지 로케이션) 로 요청을 라우팅합니다. POP (엣지 로케이션) 는 일반적으로 지연 시간 측면에서 가장 가까운 CloudFront POP입니다.

  3. CloudFront 캐시에서 요청된 객체를 검사합니다. 객체가 캐시에 있는 경우 해당 객체를 사용자에게 CloudFront 반환합니다. 객체가 캐시에 없는 경우, CloudFront 다음을 수행하십시오.

    1. CloudFront 요청을 배포의 사양과 비교하여 해당 객체 (예: Amazon S3 버킷 또는 HTTP 서버) 에 요청을 오리진 서버에 전달합니다.

    2. 원본 서버는 객체를 다시 엣지 로케이션으로 보냅니다.

    3. 오리진에서 첫 바이트가 도착하자마자 객체를 사용자에게 CloudFront 전달하기 시작합니다. CloudFront 또한 다음 번에 다른 사람이 요청할 때 사용할 수 있도록 객체를 캐시에 추가합니다.


					사용자로부터 오리진으로의 요청 및 응답  CloudFront

리전 엣지 캐시의 CloudFront 작동 방식

CloudFront 접속 지점 (POP 또는 엣지 로케이션이라고도 함) 을 통해 인기 콘텐츠를 시청자에게 빠르게 제공할 수 있습니다. CloudFront 또한 콘텐츠가 POP에 머무를 만큼 인기가 없는 경우에도 더 많은 콘텐츠를 시청자에게 더 가깝게 제공하여 해당 콘텐츠의 성능을 개선하는 데 도움이 되는 지역별 엣지 캐시를 제공합니다.

리전 엣지 캐시는 모든 유형의 콘텐츠, 특히 시간이 지나면서 점차 사용되지 않게 되는 콘텐츠에 유용합니다. 이러한 콘텐츠의 예로는 동영상, 사진 또는 아트워크와 같은 사용자 생성 콘텐츠, 제품 사진 및 동영상과 같은 전자 상거래 자산, 갑자기 사용자가 많아질 수 있는 뉴스 및 이벤트 관련 콘텐츠 등이 있습니다.

리전 캐시 작동 방식

지역 엣지 캐시는 시청자와 가까운 전 세계에 배포된 CloudFront 위치입니다. 최종 사용자에게 콘텐츠를 직접 제공하는 전역 엣지 로케이션인 POP와 원본 서버 사이에 위치합니다. 객체의 사용도가 떨어지면 개별 POP가 이러한 객체를 제거하여 보다 많이 사용되는 콘텐츠가 해당 공간을 사용하도록 합니다. 리전 엣지 캐시는 개별 POP보다 캐시가 더 큽니다. 따라서 객체가 가장 가까운 리전 엣지 캐시 위치에 더 오래 캐시 상태로 유지됩니다. 이렇게 하면 더 많은 콘텐츠를 시청자와 더 가깝게 유지할 수 있어 원본 서버로 CloudFront 돌아갈 필요가 줄어들고 시청자의 전반적인 성능이 향상됩니다.

최종 사용자가 웹 사이트나 애플리케이션을 통해 요청하면, DNS는 이 요청을 사용자의 요청을 가장 잘 처리할 수 있는 POP로 라우팅합니다. 이 로케이션은 일반적으로 지연 시간 측면에서 가장 가까운 CloudFront 엣지 로케이션입니다. POP에서 요청된 객체의 캐시를 CloudFront 확인합니다. 객체가 캐시에 있는 경우 해당 객체를 사용자에게 CloudFront 반환합니다. 객체가 캐시에 없으면, 일반적으로 POP가 가장 가까운 리전 엣지 캐시로 이동하여 객체를 가져옵니다. POP가 리전 엣지 캐시를 건너뛰고 오리진으로 직접 이동하는 경우에 대한 자세한 내용은 다음 참고 사항을 참조하세요.

리전 엣지 캐시 로케이션에서 해당 캐시에 요청된 객체가 있는지 CloudFront 다시 확인합니다. 객체가 캐시에 있는 경우 객체를 요청한 POP에 CloudFront 전달합니다. 지역 에지 캐시 위치에서 첫 번째 바이트가 도착하자마자 객체를 사용자에게 CloudFront 전달하기 시작합니다. CloudFront 또한 다음 번에 다른 사람이 요청할 때 사용할 수 있도록 POP의 캐시에 객체를 추가합니다.

POP 또는 지역 엣지 캐시 위치에 캐시되지 않은 객체의 경우 요청을 배포의 사양과 CloudFront 비교하여 요청을 원본 서버에 전달합니다. 오리진 서버가 객체를 지역 엣지 캐시 위치로 다시 보낸 후 POP에 전달된 다음 사용자에게 CloudFront 전달합니다. CloudFront 또한 이 경우, 최종 사용자가 다음 번에 요청할 때 사용할 수 있도록 POP 외에도 리전별 엣지 캐시 위치의 캐시에 객체를 추가합니다. 이렇게 하면 한 지역의 모든 POP가 로컬 캐시를 공유하므로 오리진 서버에 여러 번 요청하지 않아도 됩니다. CloudFront 또한 오리진 서버와의 지속적인 연결을 유지하므로 오리진에서 객체를 최대한 빨리 가져올 수 있습니다.

참고
  • 리전 엣지 캐시는 POP에 기능 패리티를 둡니다. 예를 들어, 캐시 무효화 요청이 들어오면 객체가 만료되기 전에 POP 캐시 및 리전 엣지 캐시 모두에서 객체가 제거됩니다. 다음에 최종 사용자가 객체를 요청할 때, CloudFront에서는 최신 버전의 객체를 가져오도록 오리진에 반환합니다.

  • 프록시 HTTP 메서드(PUT, POST, PATCH, OPTIONS, DELETE)는 POP에서 오리진으로 바로 이동하며 리전 엣지 캐시를 통해 프록시되지 않습니다.

  • 요청 시 결정된 동적 요청은 리전 엣지 캐시를 통과하지 않고 오리진으로 직접 이동합니다.

  • 오리진이 Amazon S3 버킷이고 요청의 최적 리전 엣지 캐시가 S3 버킷과 동일한 AWS 리전에 있는 경우, POP가 리전 엣지 캐시를 건너뛰고 S3 버킷으로 직접 이동합니다.

다음 다이어그램은 요청과 응답이 엣지 로케이션과 리전 CloudFront 엣지 캐시를 통과하는 방식을 보여줍니다.


					최종 사용자부터 엣지 로케이션 및 지역  CloudFront  엣지 캐시를 거쳐 오리진 서버까지 이르는 요청 및 응답 경로를 나타낸 다이어그램