CloudFront

박진선·2024년 5월 26일
0

CloudFront

.html, .css, .js 및 이미지 파일과 같은 정적 및 동적 웹 콘텐츠를 사용자에게 더 빨리 배포하도록 지원하는 웹 서비스이다.

엣지 로케이션이라고 하는 데이터 센터의 전 세계 네트워크를 통해 콘텐츠를 제공한다.
CloudFront를 통해 서비스하는 콘텐츠를 사용자가 요청하면 지연 시간이 가장 낮은 엣지 로케이션으로 요청이 라우팅되므로 가능한 최고의 성능으로 콘텐츠가 제공된다.

콘텐츠가 이미 지연 시간이 가장 낮은 엣지 로케이션에 있는 경우 CloudFront가 콘텐츠를 즉시 제공한다.
콘텐츠가 엣지 로케이션에 없는 경우 CloudFront는 콘텐츠의 최종 버전에 대한 소스로 지정된 오리진(Amazon S3 버킷, MediaPackage 채널, HTTP 서버(예: 웹 서버) 등)에서 콘텐츠를 검색한다.

CloudFront 데이터 전달 과정

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

  2. DNS는 요청을 최적으로 처리할 수 있는 CloudFront POP(엣지 로케이션)로 라우팅한다. 일반적으로는 지연 시간 관점에서 가장 가까운 CloudFront POP 이다.

  3. CloudFront는 해당 캐시에 요청된 객체가 있는지 확인한다. 객체가 캐시에 있으면 CloudFront는 객체를 사용자에게 반환한다. 객체가 캐시에 없으면 CloudFront가 다음을 수행한다.

    a. CloudFront는 배포의 사양과 요청을 비교하고 요청을 해당하는 객체로 사용자의 원본 서버(예: Amazon S3 버킷 또는 HTTP 서버)에 전달한다.

    b. 원본 서버는 객체를 다시 엣지 로케이션으로 보낸다.

    c. 오리진에서 첫 번째 바이트가 도착하면 CloudFront가 객체를 사용자에게 전달하기 시작한다. CloudFront는 다음에 다른 사용자가 객체를 요청할 때 캐시에 해당 객체를 추가한다.

profile
주니어 개발자 입니다

0개의 댓글