하루하루는 성실하게 인생 전체는 되는대로

[네트워크] CDN(Content Delivery Network) 본문

네트워크

[네트워크] CDN(Content Delivery Network)

희롭 2022. 2. 7. 21:50

CDN

대용량 정적 콘텐츠를 CDN 서버에 분산시키고

유저의 네트워크 경로에서 가장 가까운 서버부터 컨텐츠 전송받도록 하여

트래픽이 메인 서버에 집중되지 않고 각 지역으로 분산되도록 하는 기술

(일종의 캐싱처럼 CDN 서버에 저장)

 

CDN 도메인

CDN 서버에 접근하기 위한 도메인

 

서비스 도메인

실제 서비스에서 사용되는 도메인

=> 서비스 도메인에 CDN 도메인을 CNAME 처리해줘야 함.(일종의 매핑)

 

원본(오리진)

CDN에 컨텐츠 배포할 서버

원본경로(오리진 경로)

원본 서버의 컨텐츠를 CDN 배포할 때의, 오리진 서버 내의 컨텐츠 경로

 

Purge

CDN에 캐싱된 컨텐츠 삭제하고, 원본 서버에서 다시 받아오는 기능

 

Cname(Canonical Name)

 : 도메인의 별칭. 즉, 도메인의 또다른 도메인 이름.

A recode (A 레코드)

 : 도메인에 IP 매핑하는 것.
=> DNS 레코드 타입 중 하나
=> VIP : 한 도메인에 여러 IP 또는 한 A타입 레코드에 여러 IP 매핑

(EX)
[Cname]   huii-log.tistory.com <=> hui.tistory.com
[A recode] huii-log.tistory.com <=> 10.123.45.678

 

기존 캐싱방식처럼 http 헤더 정보를 사용해 캐싱 주기 및 캐싱 상태 결정

  • Etag : CDN과 origin 서버간 동일한 hash값 가지고 있지 않으면 컨텐츠 갱신시킴
  • Expires : 컨텐츠의 유효기간(GMT 기준의 절대시간)
  • cache control
    • max-age : 상대적 시간(~초)
    • no-cache : 캐싱 아닌 것처럼 항상 강제로 컨텐츠 유효성 검사시키는 옵션. freshness를 강제로 유지.
    • no-store : response 데이터 저장(store) x
    • must-revalidate : 유효성 검사 강제하여 fresh하지 않은 캐시의 사용 방지함.
Comments