Skip to content
Khoá học AWSCloudFront & AWS Global AcceleratorGiới thiệu về AWS Cloudfront

Amazon CloudFront là gì

Amazon CloudFront là dịch vụ Content Delivery Network (CDN) của AWS, giúp phân phối nội dung (web page, hình ảnh, video, API, file tải xuống…) đến người dùng trên toàn cầu với độ trễ thấptốc độ cao. CloudFront sử dụng mạng lưới Edge Locations được phân bổ ở nhiều quốc gia để đưa nội dung đến gần người dùng nhất.

Tại sao cần CloudFront

Khi người dùng ở xa server/resource origin, tốc độ tải nội dung sẽ chậm do:

  • Khoảng cách địa lý → tăng độ trễ (latency).
  • Tắc nghẽn mạng (network congestion).
  • Yêu cầu qua nhiều ISP trung gian.

CloudFront giải quyết vấn đề này bằng cách:

  • Cache nội dung tại các Edge Location gần người dùng.
  • Giảm số lần truy vấn đến origin.
  • Tự động chọn tuyến đường tối ưu (AWS backbone network).

Kiến trúc cơ bản

CloudFront bao gồm các thành phần chính:

Thành phầnMô tả
OriginNguồn nội dung (ví dụ: Amazon S3, EC2, ALB, API Gateway).
DistributionCấu hình phân phối nội dung, gồm thông tin origin, behavior, cache.
Edge LocationĐiểm đặt máy chủ CDN của AWS gần người dùng để cache và phân phối nội dung.
Regional Edge CacheLớp cache trung gian giữa Edge Location và origin để tăng tỷ lệ cache hit.

Luồng hoạt động:

  1. Người dùng gửi request đến CloudFront.
  2. CloudFront kiểm tra cache tại Edge Location gần nhất.
  3. Nếu có cache → trả về ngay.
  4. Nếu không có cache → lấy dữ liệu từ origin, lưu vào cache, trả về cho người dùng.
CloudFront là gì

Các loại nội dung hỗ trợ

CloudFront hỗ trợ:

  • Static content: HTML, CSS, JS, hình ảnh, video.
  • Dynamic content: API responses, personalization.
  • Streaming media: HLS, DASH.
  • Downloadable files: PDF, ZIP, game assets.

Lợi ích khi dùng CloudFront

  • 🚀 Hiệu năng cao: Giảm latency nhờ phân phối nội dung từ vị trí gần người dùng.
  • 🔒 Bảo mật tích hợp:
    • Kết hợp với AWS WAF để chống tấn công web.
    • Hỗ trợ SSL/TLS (HTTPS).
    • Signed URL & Signed Cookies để kiểm soát truy cập.
  • 📈 Tự động mở rộng: Xử lý lưu lượng lớn mà không cần quản lý hạ tầng.
  • 💰 Tối ưu chi phí: Giảm tải cho origin, tiết kiệm băng thông.

Khi nào nên dùng CloudFront?

  • Website hoặc API có người dùng toàn cầu.
  • Ứng dụng cần tải nhanh dữ liệu tĩnh hoặc động.
  • Hệ thống streaming video/audio.
  • Cần bảo vệ nội dung và chống DDoS ở lớp ứng dụng.

Pricing trong CloudFront

CloudFront tính phí dựa trên:

  • Data Transfer Out: Lượng dữ liệu truyền từ CloudFront Edge Location đến người dùng.
    • Với mỗi vùng địa lý thì sẽ có mức giá khác nhau.
  • HTTP/HTTPS Requests: Số lượng request xử lý.
  • Invalidation Requests: Yêu cầu xóa cache (một số miễn phí).

Price Classes là gì

CloudFront có nhiều Price Classes để tối ưu chi phí dựa trên vùng địa lý người dùng:

  • Price Class 100: Chỉ sử dụng Edge Locations ở Mỹ, Canada, và Châu Âu. Chỉ gồm những khu vực có giá rẻ nhất
  • Price Class 200: Bao gồm Price Class 100 + Châu Á, Úc, New Zealand. Trung hoà giữa giá và Performance
  • Price Class All: Sử dụng tất cả Edge Locations toàn cầu. Performance tốt nhất nhưng bao gồm cả những vùng có giá cao nhất

Chọn Price Class phù hợp giúp giảm chi phí nếu người dùng chính ở một số khu vực nhất định.