aws 서비스 정리 | CloudFront

Jihun Kim·2021년 12월 20일
0

aws

목록 보기
3/16
post-thumbnail

CloudFront

CloudFront는 전 세계 이곳 저곳에 Edge server(Location)을 두고 client에 가장 가까운 Edge server를 찾아 latency를 최소화 시켜 빠른 데이터를 제공하는 aws의 CDN(Contents Delivery Network) 서비스이다.

즉, CloudFront를 통해 서비스하는 컨텐츠를 사용자가 요청하면 지연 시간이 가장 낮은 엣지 로케이션으로 요청이 라우팅 되는 것이다.

  • 컨텐츠가 이미 지연 시간이 가장 낮은 엣지 로케이션에 있다면: CloudFront는 즉시 컨텐츠를 제공한다.
  • 만약 컨텐츠가 엣지 로케이션에 없다면: CloudFront는 컨텐츠의 최종 버전에 대한 소스로 지정된 오리진(S3, EC2 instance 등)에서 컨텐츠를 검색한다.

→ Edge server는 같은 요청에 대해 빠르게 응답해 주기 위해 cache 기능을 제공한다.

→ CloudFront를 사용하면 파일 또는 객체의 사본이 전 세계 여러 엣지 로케이션에 유지(캐시) 되므로 안정성과 가용성이 향상 된다.



데이터 전송 과정 요약

  1. 클라이언트로부터 edge server에 요청 발생
  2. edge server는 요청한 데이터에 대한 캐싱 여부 확인
  3. 만약 클라이언트의 근거리에 위치한 edge server 중 캐싱 데이터가 존재하면 사용자의 요청에 맞는 데이터를 응답함. 그러나 캐싱 되어 있지 않은 경우 origin server로 요청 포워딩됨
  4. 요청 받은 데이터를 origin server에서 획득 후 edge server에 캐싱 데이터를 생성하고, 클라이언트에 응답


CloudFronts가 지원하는 서비스

CloudFronts로부터 이미지 또는 정적 파일 OR 스트리밍(동영상 재생 & 실시간 동영상 재생)을 지원하는 동영상 컨텐츠를 서비스 받을 수 있음



CDN을 이용하는 서비스의 예시

가령 쇼핑몰의 경우 많은 이미지를 빠르게 보여주어야 하는데, 이를 위해 이미지를 CDN으로 보내며 이를 퍼징이라 한다.

즉, 물리적으로 먼 거리에 있는 서버로부터 클라이언트가 컨텐츠를 요청할 경우, 빠른 응답을 주기 위해 origin server의 컨텐츠를 클라이언트와 가까이 있는 캐시 서버에 저장해서 cash 서버가 요청에 응답해 주는 방식이다.


profile
쿄쿄

0개의 댓글