핵심 인사이트 3줄

  1. CDN(Content Delivery Network)은 전 세계 분산된 엣지 서버에 콘텐츠를 캐싱해 사용자와 가장 가까운 위치에서 콘텐츠를 전달함으로써 레이턴시를 최소화하는 인프라다.
  2. 정적 파일 캐싱을 넘어 동적 콘텐츠 가속·DDoS 보호·TLS 종단·API 게이트웨이 기능으로 진화해 현대 웹 아키텍처의 첫 번째 방어선이자 성능 레이어가 되었다.
  3. Cache-Control 헤더·TTL 설정·캐시 무효화(Invalidation) 전략이 CDN 활용의 핵심이며, 원본 서버 보호와 캐시 히트율 최적화의 균형이 중요하다.

Ⅰ. CDN의 구조와 동작 원리

CDN(Content Delivery Network)은 PoP(Point of Presence, 접속 거점)에 위치한 엣지 서버 네트워크로, 원본 서버(Origin)의 콘텐츠를 복제·캐싱해 가까운 위치에서 제공한다.

사용자 (서울)
   │ DNS 조회
   ↓
DNS → 가장 가까운 엣지 노드 (CloudFront Seoul PoP)
   ↓
캐시 히트? ─── YES ──→ 엣지에서 즉시 응답 (10ms)
   │
   NO
   ↓
원본 서버 (US-East)에서 가져와 엣지 캐싱 (150ms)

레이턴시 비교

요청 방식레이턴시
원본 직접 (서울→미국)~150ms
CDN 캐시 히트 (서울)~5ms
CDN 미스 + 원본 패치~160ms

📢 섹션 요약 비유: CDN은 편의점 네트워크다 — 물건(콘텐츠)을 멀리 있는 본사 창고(원본 서버) 대신, 동네 편의점(엣지 서버)에서 바로 가져온다.


Ⅱ. CDN 캐싱 전략

Cache-Control 헤더

Cache-Control: public, max-age=86400     # 1일 캐시
Cache-Control: private, no-cache         # 사용자별, 항상 재검증
Cache-Control: public, s-maxage=3600     # CDN 1시간, 브라우저 다름
Cache-Control: immutable, max-age=31536000 # 해시URL: 1년 캐시

캐시 가능 콘텐츠 분류

콘텐츠 유형캐시 전략TTL
JS/CSS (해시)immutable 캐시1년
이미지public 캐시7일~30일
HTML짧은 TTL + ETag5분~1시간
API 응답private or no-cache없음
개인화 콘텐츠no-store없음

📢 섹션 요약 비유: Cache-Control은 유통기한 스티커다 — 오래된 빵(HTML)은 매일 새로 받고, 통조림(해시된 JS)은 1년 캐시해도 된다.


Ⅲ. CDN 제공 기능

현대 CDN의 핵심 기능

기능설명
정적 캐싱JS·CSS·이미지·영상 엣지 캐싱
동적 가속TCP 연결 재사용·경로 최적화
TLS 종단엣지에서 HTTPS 처리·인증서 관리
DDoS 보호트래픽 스크러빙·Rate Limiting
WAF웹 방화벽·SQL 인젝션 차단
이미지 최적화WebP 변환·반응형 리사이징
Edge Functions엣지에서 서버리스 코드 실행

주요 CDN 서비스 비교

서비스특징
AWS CloudFrontAWS 생태계 통합, Lambda@Edge
Cloudflare보안 강력, Workers 엣지 컴퓨팅
Fastly실시간 퍼지·VCL 세밀 제어
Akamai엔터프라이즈, 최대 PoP 수

📢 섹션 요약 비유: 현대 CDN은 스마트 배달 드론이다 — 단순 배달(캐싱)을 넘어 보안 검사(WAF), 포장(이미지 최적화), 배달 중 처리(Edge Functions)까지 한다.


Ⅳ. 캐시 무효화 (Cache Invalidation)

전략 1 — TTL 만료 대기:
  단순하지만 최신 콘텐츠 반영 지연

전략 2 — 파일명에 해시 포함:
  style.a3f9b.css → 내용 변경 시 새 파일명 → TTL 무관하게 즉시 반영
  [BEST PRACTICE]

전략 3 — 강제 무효화 (Purge API):
  AWS CloudFront 무효화: $0.005/10,000 요청
  Cloudflare: 무료 즉시 퍼지

캐시 히트율 최적화

히트율 = 캐시 히트 / 전체 요청

히트율 개선 방법:
  ✅ 적절한 TTL 설정 (너무 짧으면 히트율↓)
  ✅ 쿼리 파라미터 정규화
  ✅ Vary 헤더 최소화
  ✅ 캐시 키 최적화

📢 섹션 요약 비유: 캐시 무효화는 편의점 재고 교체다 — 유통기한(TTL)이 지나면 자동 교체(만료), 신제품 즉시 출시(해시 URL), 즉시 강제 교체(Purge API).


Ⅴ. Edge Computing과 CDN의 융합

전통 CDN: 정적 파일 캐싱 전용
     ↓
현대 CDN: 엣지 컴퓨팅 통합

Cloudflare Workers / AWS Lambda@Edge / Fastly Compute@Edge:
  → 엣지에서 JavaScript/WASM 실행
  → A/B 테스트·개인화·인증 처리 엣지화
  → 원본 서버 완전 우회 가능

Edge Function 예시 (Cloudflare Workers)

export default {
  async fetch(request) {
    const url = new URL(request.url);
    // A/B 테스트 쿠키 없으면 랜덤 할당
    if (!request.headers.get('Cookie')?.includes('ab=')) {
      const variant = Math.random() < 0.5 ? 'A' : 'B';
      const response = await fetch(
        `https://origin.example.com${url.pathname}?variant=${variant}`
      );
      return new Response(response.body, {
        headers: { ...response.headers, 'Set-Cookie': `ab=${variant}` }
      });
    }
    return fetch(request);
  }
};

📢 섹션 요약 비유: Edge Function은 배달 드론이 배달 중에 포장을 변경하는 것이다 — 고객 주소(지역), 취향(쿠키)에 따라 본사(원본)에 가지 않고도 맞춤 포장을 한다.


📌 관련 개념 맵

CDN (Content Delivery Network)
├── 핵심 구성
│   ├── 엣지 서버 (Edge Server)
│   ├── PoP (Point of Presence)
│   └── 원본 서버 (Origin)
├── 캐싱 기술
│   ├── Cache-Control / TTL
│   ├── ETag / 조건부 요청
│   └── 캐시 무효화 (Purge)
├── 부가 기능
│   ├── TLS 종단 / 인증서 관리
│   ├── DDoS 방어 / WAF
│   └── Edge Functions
└── 서비스
    ├── AWS CloudFront
    ├── Cloudflare
    └── Akamai / Fastly

📈 관련 키워드 및 발전 흐름도

┌─────────────────────────────────────────────────────────────────┐
│                    CDN 발전 흐름                                 │
├──────────────┬────────────────────┬─────────────────────────────┤
│ 1998년       │ Akamai 창립        │ 최초 상용 CDN               │
│ 2008년       │ AWS CloudFront     │ 퍼블릭 클라우드 CDN 표준화  │
│ 2010년       │ Cloudflare 설립    │ 보안+CDN 통합               │
│ 2015년       │ HTTP/2 + CDN 최적화 │ 멀티플렉싱, 서버 푸시       │
│ 2018년       │ Edge Computing 등장 │ Lambda@Edge, CF Workers    │
│ 2022년       │ HTTP/3 + QUIC      │ UDP 기반 레이턴시 추가 감소 │
└──────────────┴────────────────────┴─────────────────────────────┘

핵심 키워드 연결:
원본 서버 → CDN 엣지 캐싱 → 캐시 히트율 → 레이턴시 감소
    ↓              ↓                ↓
PoP 분산      Cache-Control      TTL 최적화
    ↓
DDoS 방어 → WAF → Edge Functions → Serverless Edge

👶 어린이를 위한 3줄 비유 설명

  1. CDN은 전국 편의점 체인이다 — 음료수(콘텐츠)를 멀리 있는 공장(원본)에서 직접 가져오는 대신, 가까운 편의점(엣지)에서 바로 산다.
  2. Cache-Control은 유통기한이다 — 유통기한이 길면(긴 TTL) 자주 들르지 않아도 되고, 짧으면(짧은 TTL) 자주 새로 채워야 한다.
  3. Edge Function은 배달 기사가 배달 중에 맞춤 서비스를 하는 것이다 — 배달 도중에 고객 취향에 맞게 포장을 바꾸거나 선물을 추가한다.