CDN (Content Delivery Network)
컨텐츠를 효율적으로 전달하기 위해 여러 노드를 가진 네트워크에 데이터를 저장하여 제공하는 시스템
- 주요 ISP(Internet Services Provider)의 CDN 서버에 콘텐츠를 분산시켜서 저장
- 사용자의 네트워크 경로 상 가장 가까운 곳의 서버로부터 콘텐츠를 전송받도록 함
- 트래픽이 특정 서버에 집중되지 않고 각 지역 서버로 분산되도록 하는 기술
- 콘텐츠
- HTML
- 이미지, 동영상, 파일
- CSS
- javascript
CDN 캐싱 방식의 종류
Static Caching
- 사용자의 요청이 없어도,
Origin Server
에 있는 Contents를 운영자가 미리 Cache Server
에 저장하는 방식
Dynamic Caching
- 사용자가 콘텐츠를 요청하면,
Cache Server
에 콘텐츠가 있는지 확인
- 없으면,
Origin Server
다운로드 받아서 사용자에게 전달
TTL
이 지나면 캐싱된 파일은 삭제
Amazon CloudFront
짧은 지연 시간과 빠른 전송 속도로 최종 사용자에게 데이터, 동영상, Application 및 API를 안전하게 전송하는 글로벌 콘텐츠 전송 네트워크(CDN) 서비스
CloudFront 특징
Amazon CloudFront Global Edge 서비스
CloudFront로 연결 가능한 Origin 종류
- S3
- EC2 Instance
- ELB
- Custom Origin
CloundFront 콘텐츠 제공 방식
- 사용자가 이미지 파일 및 HTML 파일 같은 하나 이상의 객체 요청
- DNS가 요청을 최적으로 서비스할 수 있는 CloudFront Edge Location으로 요청을 라우팅
- Edge Location에서 CloudFront는 해당 캐시에 요청된 파일이 있는지 확인
- 없다면, Origin Server에 요청
- Origin Server로부터 받은 컨텐츠를 캐시에 저장
다양한 보안 서비스 제공
- Amazon Shield 제공
- Amazon WAF (Web Application Firewall)
- Signed URL, Signed Cookie를 통한 콘텐츠 보호
- 인증을 통과한 사용자에게만 콘텐츠를 제공하기 위함
- HTTPS Redirection, SSL 인증서 연동 서비스 제공
- ACM (AWS Certificate Manager)과 연동하여 SSL 인증서 등록
비용 절감
- 콘텐츠 Origin이 Amazon 내에 있는 경우, 네트워크 Out에 대한 비용은 지불하지 않는다.
- 오로지 CloudFront 사용료에 대한 부분만 지불