개념
콘텐츠 전송 네트워크(Content Delivery Network, CDN) 은 전 세계에 분산된 서버 네트워크며, 사용자와 물리적으로 가까운 위치에서 정적 콘텐츠(혹은 동적 콘텐츠)를 제공하여 서버 과부하를 방지하고 통신 지연을 단축합니다. CDN은 통신에 참여하는 호스트 간에 중간 서버를 두어 성능을 향상합니다. 대표적인 CDN 서비스로는 CloudFront, CloudFlare 등이 있습니다.
CDN에서 Push 방식과 Pull 방식의 차이점
Push 방식
Push 방식은 원본 서버가 콘텐츠를 미리 CDN 서버로 전달하는 방식입니다. Push 방식은 적절한 시기에 정확한 콘텐츠를 제공할 수 있습니다. 하지만, 지속적으로 업데이트를 해줘야 한다는 점에서 관리 비용이 상대적으로 높습니다.
Pull 방식
Pull 방식은 CDN 서버가 원본 서버로 요청을 보내 콘텐츠를 가져오는 방식입니다. 클라이언트가 요청을 보내는 경우, CDN에 원하는 콘텐츠가 없다면 원본 서버로부터 콘텐츠를 가져와서 업데이트하는 방식으로 동작합니다. 초기 요청에서는 원본 서버에서 콘텐츠를 가져오는 작업을 수행해야 하므로 응답 속도가 저하될 수 있습니다.