먼저 CDN이란?
- CDN(Content delivery network)은 콘텐츠 전송 네트워크로써 지리, 물리적으로 떨어져 있는 사용자에게 컨텐츠를 더 빠르게 제공하는 시스템을 말합니다.
- 사용자가 원격지에 있는 서버(Origin Server)로 부터 Content(Web Object, Video, Music, Image, Document등)을 다운 받을 때 가까이 있는 서버에서 받는 것보다 시간이 오래 걸립니다.
- 그러기에 사용자와 가까운 곳에 위치한 Cache Server에 해당 Content를 저장(캐싱)하고 Content 요청시에 Cache Server가 응답을 줍니다.
캐싱이란?
캐시는 컴퓨터의 성능을 향상시키기 위해 사용되는 메모리를 말하는데, 캐싱은 이 캐시 영역으로 데이터를 가져와서 접근하는 방식이다.
CDN의 장점
- 웹사이트 로딩 속도 개선
- 오리지날 서버의 트래픽 부하 및 비용을 줄일 수 있습니다.
- 인터넷 회선 비용 절감
- 서버 비용이 감소합니다.
- 컨텐츠 제공의 안정성
- 인터넷 서비스 제공자에 직접 연결되어 데이터를 전송 하므로 컨텐츠를 빠른 속도로 제공할 수 있습니다.
- 웹사이트 보안 개선
- 대규모 분산 서버 장비로 공격 트래픽을 완화시킬 수 있습니다
CDN의 작동원리
- 최초 요청은 서버로부터 컨텐츠를 가져와 고객에게 전송하며 동시에 CDN 캐싱 장비에 저장합니다.
- 두번째 이후 모든 요청은 CDN 업체에서 지정하는 해당 컨텐츠 만료 시점까지 CDN 캐싱 장비에 저장된 컨텐츠를 전송합니다.
- 자주 사용하는 페이지에 한해서 CDN 장비에서 캐싱이 되며, 해당 컨텐츠 호출이 없을 경우 주기적으로 삭제됩니다.
- 서버가 파일을 찾는 데 실패하는 경우 CDN 플랫폼의 다른 서버에서 콘텐츠를 찾아 엔드유저에게 응답을 전송합니다.
- 콘텐츠를 사용할 수 없거나 콘텐츠가 오래된 경우, CDN은 서버에 대한 요청을 프록시로 작동하여 향 후 요청에 대해 응답할 수 있도록 새로운 콘텐츠를 저장합니다.
프록시란? 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 시스템을 말함.
CloudFront란?
- CloudFront는 AWS에서 제공하는 CDN 서비스입니다.
- 캐싱을 통해 사용자에게 좀 더 빠른 전송 속도를 제공하는 것을 목적으로 합니다.
- 전 서계 이곳저곳에 Edge Server(Location)을 두고 사용자에게 가장 가까운 Edge Server를 찾아 빠른 데이터를 제공합니다.
2-1. CloudFront 구성
- Origin Server
- 원본 데이터를 가지고 있는 서버입니다.
- AWS에서는 S3, EC2 instance를 나타냅니다.
- Edge Server
- AWS 에서 실질적으로 제공하는 전 세계에 퍼져있는 서버입니다.
- Edge Server에는 요청 받은 데이터에 대해서 빠르게 응답해주기 위해 캐싱 기능을 제공합니다.
2-2. CloudFront 작동방식
- 사용자로부터 요청이 발생합니다.
- 요청이 발생한 Edge Server는 요청이 발생한 데이터에 대하여 캐싱 여부를 확인합니다.
- 캐싱 데이터가 존재하면 사용자에 요청에 맞게 응답하고 존재하지 않으면 Origin Server로 요청합니다.
- 요청 받은 데이터에 대해 Origin Server로부터 전달 받은 Edge Server는 캐싱 데이터를 생성하고 사용자에게 응답합니다.
'TTL > 13주차 ~ 16주차 TIL (11.21 ~ 12.16)' 카테고리의 다른 글
최종프로젝트 중간발표 KPT 회고록 (0) | 2022.12.15 |
---|---|
2022-12-13 TIL (S3란) (0) | 2022.12.15 |
2022-12-12 TIL (ec2란?) (0) | 2022.12.15 |
2022-12-09 TIL (최종 프로젝트 SA) (0) | 2022.12.15 |
2022-12-08 TIL (django field type) (0) | 2022.12.08 |