쉬운·기술사전비유로 이해하는 AI·개발 용어
배포와 운영

CDN

CDN

방문자 가까이에 복사해 둔 사이트 사본이에요.

CDN 개념 다이어그램

빵집이 하나뿐인데 전 세계에서 주문이 들어온다고 상상해 보세요.

도쿄의 누군가가 식빵을 주문해요. 빵을 구워 포장해 단 하나뿐인 가게에서 배송합니다. 사흘이 지나 도착한 빵은 이미 딱딱하죠. 게다가 만 개의 주문이 동시에 몰리면 오븐 하나는 버텨내지 못해요. CDN 없는 웹사이트가 딱 이 모습이에요. 서버 하나가 지구 반대편 방문자에게까지 모든 것을 직접 배송하는 거예요.

CDN은 이 두 문제를 동시에 해결해요. 약어를 풀어 보면 각 단어가 하는 일이 드러납니다.

빵집 하나 대신, 이제 도쿄 창고에도, 런던에도, 상파울루에도 빵이 미리 채워진 냉동 창고가 생겨요. 도쿄 고객은 동네 창고에서 바로 가져갑니다. 빵은 빠르고 신선하게 도착하고, 원래 오븐은 거의 알아채지도 못해요.

서버를 직접 다루지 않아도 이 내용이 중요한 이유:

  1. 속도. 거리는 곧 시간이에요. 대양을 넘어 왕복하는 요청은 도심을 가로지르는 요청보다 언제나 느립니다. 파일을 사용자 가까이로 당기면 페이지가 즉각 뜨고요. 사람들은 이름을 몰라도 이 차이를 몸으로 느껴요. 느린 사이트는 고장난 것처럼 느껴지고, 사용자는 떠납니다.

  2. 생존. 이 점이 실제로 결정적이에요. 평소에는 잠잠하다가 갑자기 트래픽이 폭발하는 순간이 있어요. 글이 바이럴을 타거나, 이메일 뉴스레터가 나가거나, 무언가 공유되는 때요. CDN 없이는 방문자 전부가 작은 오븐 하나를 동시에 두드리고, 드디어 관객이 생긴 그 순간 서버가 다운됩니다. CDN이 있으면 인파가 수백 개의 창고로 분산되어 각자의 동네를 담당해요. 기뻐해야 할 바로 그 순간, 사이트가 살아남아요.

솔직한 주의사항 두 가지:

비개발자들이 놀라는 부분이 있어요. 이미 CDN을 쓰고 있을 가능성이 높아요. 사이트가 Shopify 위에 있거나, Cloudflare 뒤에 있거나, 요즘 보편적인 플랫폼에 호스팅되어 있다면 CDN은 선택도 하지 않았는데 조용히 작동 중입니다. 우리가 당연하게 여기는 빠르고 안정적인 인터넷은 대부분 이 하나의 방식이 하루에 수십억 번 반복된 결과예요.

빵집 하나로 전 세계에 배달하느냐, 동네마다 창고를 두느냐. 빵은 같지만 경험은 완전히 달라요.