CDN

사용자에게 컨텐츠를 효율적이고 빠르게 전달하기 위한 분산 네트워크 시스템

목적

인터넷 상의 컨텐츠를 사용자가 위치한 가장 가까운 서버에서 제공함으로써 대욕폭을 효율적으로 사용하고, 페이지 로딩 시간을 줄이며 서버의 과부하를 방지하는 것이 목적이다.

상세 내용

CDN은 일반적으로 웹사이트의 정적 콘텐츠(이미지, CSS, javaSCript 파일)등을 캐싱하고, 사용자의 위치에 가까운 엣지 서버라고 불리는 서버에서 해당 콘텐츠를 제공한다.

사용자는 물리적으로 멀리 떨어져 있는 원본 서버 보다 가까운 곳에서 데이터를 받아볼 수 있다.

ex) 미국에 있는 사용자가 한국에 호스팅 된 웹 사이트에 접근하는 경우 미국에 위치한 PoP서버에서 웹사이트 콘텐츠를 사용자에게 전송하는 방식이다.

시나리오

  • 사용자가 CDN을 통해 데이터를 요청한다.

  • CDN은 사용자에게 가장 가까운 엣지 서버를 탐색한다.

  • 만약 데이터가 없다면, 데이터를 원본 서버에서 가져와 사용자에게 제공한다.

  • 미래의 요청을 위해 데이터를 캐싱한다.

  • 다음 사용자는 엣지 서버로부터 데이터를 전달받는다.

CDN이 필요한 경우

  • 웹사이트에서 그래픽, 이미지, 동영상 콘텐츠를 제공하는 경우

  • 인터넷을 통해 비즈니스를 운영

  • 하지만 특정 국가나 지역만을 타깃으로 웹 서비스를 운영한다면 CDN서비스를 활용할 필요가 없다.

주요장점

성능 향상 : 사용자가 웹사이트에 접근할 때, CDN은 사용자에게 가장 가까운 엣지 서버로부터 콘텐츠를 제공한다. 이로 인해 페이지 로딩 시간 단축 , 웹사이트의 성능 향상

트래픽 분산 : 여러 엣지 서버로 분산되기 때문에 트래픽이 몰릴일이 없다.

가용성 향상 : 한 서버에 문제가 발생해도 다른 서버에서 콘텐츠를 제공할수 있다.

보안 향상 : 공격 서버를 여러 서버로 분리시켜 Ddos 공격등의 보안 위협에 대응할 수 있다.

Last updated