AWS CloudFront CDN 완벽 가이드: 구성 방법, 캐싱 전략 및 해외 확장을 위한 실질적인 가속화 방안

AWS 클라우드프론트
AWS 클라우드프론트

국경을 넘나드는 전자상거래 사업을 운영하는 한 고객은 자사 웹사이트의 동남아시아 지역 로딩 시간이 8초를 넘어서 모바일 이탈률이 751 TP3T에 달했다고 알려왔습니다. AWS CloudFront를 도입한 후 동남아시아 지역의 첫 콘텐츠 렌더링 시간(FCP)이 1.2초로 단축되었고, 전환율 또한 약 401 TP3T 향상되었습니다.

해외 진출을 계획하는 기업에게 웹사이트 속도는 전환율에 직접적인 영향을 미치는 기술적 요소 중 하나입니다. 아마존 웹 서비스(AWS)의 글로벌 콘텐츠 전송 네트워크(CDN) 서비스인 AWS 클라우드프론트는 글로벌 접속 지연 문제를 해결하는 핵심 도구입니다. 이 글에서는 클라우드프론트의 핵심 개념, 구성 방법 및 모범 사례를 체계적으로 소개합니다.

AWS CloudFront란 무엇인가요?

AWS CloudFront는 전 세계 400개 이상의 엣지 위치에 정적 콘텐츠를 캐싱하는 글로벌 분산 콘텐츠 전송 네트워크 서비스로, 사용자가 가장 가까운 노드에서 데이터를 검색하고 액세스 지연 시간을 크게 줄일 수 있도록 합니다.

클라우드프론트의 핵심 작동 원리:

사용자가 요청을 시작하면 CloudFront는 가장 가까운 엣지 노드에 캐시가 있는지 확인합니다. 캐시가 있으면 결과를 직접 반환하고(캐시 적중), 캐시가 없으면 원본 노드에서 데이터를 가져와 캐시에 저장합니다. 마지막으로 사용자에게 결과를 반환합니다.

기존 CDN과 비교했을 때 CloudFront의 차별화된 장점:

치수 클라우드프론트 전통적인 CDN
AWS 에코시스템과의 통합 S3, EC2, ALB 및 API 게이트웨이와의 기본 통합 추가 구성 필요
보안 기능 AWS WAF 및 Shield DDoS 보호 기능이 내장되어 있습니다. 별도로 구매해야 합니다.
실시간 로그 S3/Kinesis로 실시간 로그 푸시를 지원합니다. 일반적으로 지연 시간이 깁니다.
글로벌 노드 수 400개 이상의 엣지 노드 제조사마다 상당한 차이가 있습니다.
청구 모델 트래픽과 요청 횟수에 따라 지불되며, 최소 지출 금액은 없습니다. 일반적으로 계약은 월 단위로 체결됩니다.

CloudFront 핵심 개념 설명

CloudFront를 구성하기 전에 몇 가지 핵심 개념을 이해해야 합니다.

분포배포(Distribution)는 CloudFront의 기본 구성 단위로, "가속 규칙"과 유사합니다. 각 배포는 하나 이상의 오리진 서버에 연결되며, d1234abcd.cloudfront.net과 같은 고유한 CloudFront 도메인 이름을 가집니다.

출처(원본 사이트)콘텐츠의 실제 위치는 AWS S3 버킷, EC2 인스턴스, ALB 로드 밸런서 또는 모든 HTTP 서버(사용자 지정 오리진)가 될 수 있습니다.

행동 (행동 규칙)특정 경로(예: /images/* 또는 /api/*)에 대한 캐싱 및 전달 규칙을 정의하고, 경로별로 다른 전략을 적용합니다.

엣지 위치CloudFront의 글로벌 캐시 노드는 사용자 요청에 응답하는 역할을 합니다. 전 세계적으로 400개 이상의 노드가 있으며, 중국 본토 사용자는 별도의 CloudFront China Edition 애플리케이션을 통해 이러한 노드에 접근할 수 있습니다.

TTL(캐시 수명)콘텐츠는 장기간 동안 엣지 노드에 캐시됩니다. 캐시가 만료되면 노드는 원본 서버에서 콘텐츠를 새로 고칩니다.

CloudFront 배포를 생성하는 전체 단계

1단계: CloudFront 콘솔에 접속합니다.

AWS 관리 콘솔에 로그인하고 서비스 검색창에 CloudFront를 입력하여 CloudFront 홈페이지로 이동한 다음 클릭하세요..."배포 생성"단추.

2단계: 오리진 서버(Origin)를 구성합니다.

Origin 설정에서 콘텐츠 소스를 선택하세요.

시나리오 A: 원본 서버는 S3 스토리지 버킷(정적 웹사이트 호스팅)입니다.

원본 도메인 드롭다운 메뉴에서 해당 S3 버킷을 선택하세요. 버킷에 공개 액세스 제한이 설정되어 있는 경우(권장) 해당 제한을 활성화해야 합니다. 원본 접근 제어(OAC)그리고 S3 버킷 정책에서 CloudFront에 읽기 권한을 부여하십시오.

시나리오 B: 원본 서버가 EC2/ALB(동적 웹사이트)인 경우

원본 도메인 필드에 EC2 공용 IP 주소 또는 ALB 도메인 이름을 입력하고 프로토콜로 HTTPS를 선택하십시오(원본 서버에 SSL 인증서가 구성되어 있는지 확인하십시오).

3단계: 동작 구성(캐싱 동작)

이는 CloudFront 구성에서 가장 중요한 부분으로, 다양한 경로에 대한 캐싱 전략을 결정하는 부분입니다.

정적 리소스(/이미지/), /css/권장 구성(/js/*):

할 것이다 캐시 정책 로 설정 캐싱 최적화(AWS 관리형 정책) 기본 TTL은 86,400초(24시간)입니다. 버전이 지정된 리소스(예: main.abc123.js)의 경우 더 긴 TTL(최대 31,536,000초, 즉 1년)을 설정할 수 있습니다.

동적 콘텐츠(/api/*)에 권장되는 구성입니다.:

할 것이다 캐시 정책 로 설정 캐싱 비활성화됨API 응답 캐싱을 비활성화합니다. 또한, 출처 요청 정책 로 설정 올뷰어모든 요청 헤더, 쿠키 및 쿼리 문자열이 원본 서버로 전달되는지 확인하십시오.

HTML 페이지에 권장되는 구성 (기본 경로 /*):

콘텐츠 업데이트가 빠르게 적용되도록 하려면 TTL(Time To Live)을 더 짧게 설정하세요(예: 300초 = 5분).

4단계: HTTPS 및 사용자 지정 도메인 구성

존재하다 설정 부분:

할 것이다 뷰어 프로토콜 정책 로 설정 HTTP를 HTTPS로 리디렉션모든 트래픽이 HTTPS를 사용하도록 강제합니다.

존재하다 대체 도메인 이름(CNAME) 사용자 지정 도메인 이름을 입력하세요(예: ...). www.yourdomain.com).

존재하다 맞춤형 SSL 인증서 선택하세요 AWS 인증서 관리자(ACM) (참고: CloudFront는 us-east-1 영역의 인증서만 읽습니다.)

ACM 자격증을 신청하세요미국 동부 1지역(버지니아 북부)의 인증서 관리자로 이동하여 도메인 인증서를 신청하고 DNS를 통해 인증서를 확인하십시오(도메인의 DNS에 CNAME 레코드를 추가).

5단계: DNS 생성 및 구성을 완료합니다.

딸깍 하는 소리 "배포 생성" 이후 CloudFront에서 글로벌 배포를 완료하는 데 5~15분이 소요됩니다(상태에 '활성화됨'으로 표시됨).

배포 후 도메인의 DNS 설정에서 기본 도메인의 CNAME 레코드를 CloudFront에서 할당한 도메인(예: d1234abcd.cloudfront.net)으로 연결하세요.

캐싱 전략 및 최적화 기법에 대한 자세한 설명

캐시 적중률 최적화

캐시 적중률은 CloudFront의 효율성을 측정하는 핵심 지표입니다. 적중률이 높을수록 사용자 응답 시간이 빨라지고 오리진 서버의 부하가 줄어듭니다.

클라우드프론트에서 모니터링 이 패널에는 캐시 적중률이 표시됩니다. 목표: 정적 리소스 적중률 ≥ 90%, 전체 적중률 ≥ 70%.

적중률을 높이는 핵심 방법:

쿠키 및 헤더 전달 설정을 최소화하고, 원본 서버가 반드시 필요로 하는 필드만 전달하세요. 과도한 헤더/쿠키는 서로 다른 캐시 키를 생성하여 캐시 조각화를 초래할 수 있습니다.

예를 들어, 원본 서버가 User-Agent에 의존하지 않는 경우 캐시 키에 User-Agent를 추가하지 마십시오.

캐시를 적극적으로 삭제합니다(무효화).

원본 서버 콘텐츠를 업데이트할 때(예: 웹페이지의 새 버전을 게시할 때) CloudFront의 엣지 노드는 이를 즉시 감지하지 못합니다. 엣지 노드는 수동으로 생성해야 합니다.무효화 요청지정된 경로의 캐시를 강제로 지우려면 다음 단계를 따르세요.

CloudFront 콘솔에서 해당 배포로 이동하여 클릭합니다... 무효화 태그를 클릭한 다음 클릭하세요. "무효화 생성"객체 경로에는 지울 경로를 입력합니다(예: 홈페이지를 지우려면 /index.html, 모든 콘텐츠를 지우려면 /*).

알아채다매월 만료되는 첫 1,000개의 경로는 무료입니다. 이후 만료되는 경로는 경로당 요금이 부과됩니다(경로당 약 $0.005). 잦은 삭제는 비용을 증가시키므로, 파일 이름에 버전을 지정하는 것(예: main.v2.js)을 권장하여 잦은 만료를 방지하십시오.

지리적 제한

CloudFront는 국가/지역별 접근 제한을 지원하므로 지역별 규정 준수 요건이 있는 기업에 적합합니다.

배포 설정에서 보안 부분적으로 발견됨 지리적 제한화이트리스트(지정된 국가만 허용) 또는 블랙리스트(지정된 국가 차단)를 설정할 수 있습니다.

CloudFront와 다른 AWS 서비스 간의 일반적인 통합 시나리오

시나리오 1: CloudFront + S3를 활용한 정적 웹사이트 속도 향상

이는 해외 독립 웹사이트, 마케팅 랜딩 페이지, 문서 사이트 등에 적합한 가장 일반적인 사용법입니다.

프런트엔드 정적 파일(HTML/CSS/JS/이미지)을 S3 버킷에 업로드하고 CloudFront를 통해 배포하여 전 세계적으로 로딩 속도를 향상시키세요. 북미, 유럽, 동남아시아에 있는 사용자의 경우 CloudFront를 사용하면 S3에 직접 액세스하는 것보다 지연 시간을 60%~80%까지 줄일 수 있습니다.

비용 비교S3에서 외부로 직접 트래픽을 전송하는 비용은 대략... 0.09/𝐺𝐵,𝐶𝑢𝐹𝑟𝑛𝑡흐름수량요금사용~에 대한GB당 요금은 지역에 따라 0.0085~$0.085이며, S3에서 CloudFront로의 데이터 전송은 무료이므로 전체 비용이 절감됩니다.

시나리오 2: CloudFront + ALB 동적 웹사이트 가속

WordPress나 API 서비스와 같은 동적 콘텐츠를 사용하는 웹사이트의 경우 CloudFront는 다음과 같은 기능을 제공합니다.

정적 리소스(경로: /wp-content/*)는 엣지 노드에 캐시하고, 동적 요청(경로: /wp-admin/)도 엣지 노드에 캐시합니다., /api/이 데이터는 ALB로 직접 전달되며, DDoS 공격 방지 및 HTTPS 종료 기능을 제공합니다.

시나리오 3: CloudFront + Lambda@Edge를 사용한 동적 처리

Lambda@Edge를 사용하면 CloudFront 엣지 노드에서 코드를 실행할 수 있어 다음과 같은 이점을 얻을 수 있습니다.

A/B 테스트(쿠키에 따라 다른 버전 반환), 사용자 인증(엣지에서 JWT 토큰 검증), URL 재작성 및 리디렉션, 사용자 에이전트에 기반한 기기 적응 등이 포함됩니다.

클라우드프론트 요금 설명

CloudFront의 수수료는 두 부분으로 구성됩니다.

데이터 전송 요금지역에 따라 다르지만 대략 0.0085(아름다운국가도착하다가격은 0.17(인도)/GB부터 다양합니다.

HTTP 요청 비용HTTPS 요청 10,000건당 약 $0.0100건이 발생합니다.

무료 티어최초 1TB의 데이터 전송량과 월 1천만 건의 HTTP 요청은 무료입니다(12개월 동안 유효).

비용 최적화 제안:

캐시 적중률을 개선하여 오리진 서버 트래픽을 줄이고, 적절한 TTL 설정을 통해 불필요한 오리진 서버 요청을 줄이며, S3 인텔리전트 티어링을 사용하여 오리진 서버 스토리지 비용을 절감하십시오.

문제 해결

질문 1: CloudFront 콘텐츠가 업데이트되지 않고 사용자가 이전 버전을 계속 보고 있습니다.

원인: 에지 노드 캐시가 만료되지 않았습니다. 해결 방법: 해당 경로에 대한 캐시 무효화 작업을 생성하고 캐시를 지우거나 파일 이름 버전 번호를 업데이트하십시오.

질문 2: HTTPS 인증서 오류

사유: ACM 인증서가 미국 동부 1 지역에서 신청되지 않았습니다. 해결 방법: 북부 버지니아 지역에서 인증서를 다시 신청하십시오.

질문 3: 원본 사이트 S3에서 403 Forbidden 오류가 반환됩니다.

원인: S3 버킷 정책에서 CloudFront OAC에 대한 권한이 부여되지 않았습니다. 해결 방법: S3 버킷 정책에 해당 CloudFront 서비스 주체 권한 부여 문을 추가하십시오.

질문 4: API 인터페이스가 캐시해서는 안 되는 응답을 캐시하고 있습니다.

원인: API 경로의 동작이 캐싱을 비활성화하도록 올바르게 설정되지 않았습니다. 해결 방법: /api/* 경로에 대한 별도의 동작을 생성하고 캐시 정책을 CachingDisabled로 설정하십시오.

요약하다

AWS CloudFront는 단순한 CDN 그 이상입니다. 해외 진출을 계획하는 기업이 글로벌 액세스 환경을 구축하는 데 필요한 핵심 인프라입니다. 정적 리소스 가속, 동적 콘텐츠 가속, 보안 보호 및 비용 최적화 등 CloudFront는 AWS 에코시스템과 완벽하게 통합되어 이러한 모든 영역에서 완벽한 솔루션을 제공합니다.

해외 진출을 계획하는 기업에게 있어 "접근성"에서 "빠른 접근"으로의 도약은 사용자 경험의 질적 향상을 의미합니다. 2초 이내에 로딩되는 해외 웹사이트는 경쟁사보다 훨씬 돋보입니다.


AWS 클라우드 아키텍처 계획을 지원할 전문 팀이 필요하신가요?

aws-oncloudai.com은 해외 진출을 계획하는 중국 기업을 대상으로 AWS 클라우드 서비스 컨설팅 및 구현 서비스를 제공하며, CloudFront CDN 구성, S3 정적 호스팅, 탄력적인 아키텍처 설계 등을 다룹니다. 저희와 함께하세요.무료 기술 상담 예약저희는 귀사에 맞는 맞춤형 AWS 솔루션을 제공해 드립니다.

aws-oncloudai.com | AWS 클라우드 서비스 전문 파트너

더 탐험할 것

당신이 필요한 것을 말해