Nếu bạn lưu trữ nhiều hình ảnh, khoản mục âm thầm phá hủy ngân sách của bạn không phải là lưu trữ, mà là egress: phí mà các nhà cung cấp đám mây tính mỗi khi ai đó tải xuống một tệp. Amazon S3 và phần lớn đối thủ tính tiền theo mỗi gigabyte được phục vụ, nên chỉ một bài đăng lan truyền hay một danh mục sản phẩm đông khách cũng có thể tạo ra hóa đơn băng thông lấn át số tiền bạn trả để lưu các tệp. Cloudflare R2 loại bỏ hoàn toàn khoản mục này. Nó tính không đồng cho egress, điều khiến nó trở thành nền tảng tự nhiên cho một CDN hình ảnh năm 2026.

Hướng dẫn này chỉ ra cách lưu trữ hình ảnh trên R2, phục vụ chúng qua mạng lưới toàn cầu của Cloudflare, biến đổi chúng tức thời để có Core Web Vitals hoàn hảo, và chi phí thực tế so với S3 ra sao. Đây là nửa phần lưu trữ của chiến lược hình ảnh mà tôi mô tả trong tổng quan về lưu trữ hình ảnh trên Cloudflare .

Tóm tắt

  • R2 tính 0 USD cho egress, nên việc phục vụ hình ảnh không bao giờ phát sinh hóa đơn băng thông
  • Lưu trữ là 0,015 USD mỗi GB mỗi tháng, với hạn mức miễn phí 10 GB cùng 1 triệu thao tác Class A và 10 triệu thao tác Class B mỗi tháng
  • Kết nối một tên miền tùy chỉnh với một bucket và hình ảnh của bạn được phục vụ tự động từ biên của Cloudflare
  • Ghép R2 với biến đổi hình ảnh để cung cấp WebP/AVIF đã tối ưu mà không cần lưu bản dẫn xuất
  • Quản lý mọi thứ một cách trực quan với ứng dụng máy tính miễn phí Easy Cloudflare R2
  • Để phân tích chi phí sâu hơn, xem hướng dẫn giá R2 chuyên biệt của tôi

Tại sao egress là chi phí thực của lưu trữ hình ảnh

Lưu trữ hình ảnh rẻ ở hầu hết mọi nơi. Khoản tốn kém là phục vụ chúng. Mọi nhà cung cấp với cách định giá truyền thống đều tính egress, tức chi phí băng thông để gửi dữ liệu ra cho khách truy cập của bạn. Trên Amazon S3, egress vào khoảng 0,09 USD mỗi GB sau hạn mức miễn phí nhỏ. Nghe có vẻ không đáng kể cho đến khi bạn làm phép tính.

Hãy hình dung một trang media phục vụ 5 TB hình ảnh trong một tháng. Trên S3, riêng egress đã khoảng 450 USD cho tháng đó, trước cả chi phí lưu trữ và yêu cầu. Trên R2, cùng 5 TB egress đó tốn 0 USD. Bạn chỉ trả cho lưu trữ và các thao tác. Với bất kỳ trang nhiều hình ảnh nào, khác biệt đó không phải sai số làm tròn, mà là toàn bộ luận điểm kinh doanh.

Đây là lý do R2 đã trở thành một nguồn gốc được ưa chuộng cho hình ảnh, cả một thư viện media, thumbnail video, tải xuống và tài nguyên tĩnh, và là một lựa chọn thay thế S3 thực thụ: bạn phục vụ càng nhiều, bạn càng tiết kiệm so với những ông lớn lâu năm tính phí egress.

Lưu trữ hình ảnh Cloudflare R2 là gì

Cloudflare R2 , lớp lưu trữ phía sau việc lưu trữ hình ảnh R2, là kho lưu trữ đối tượng tương thích S3 nằm trên mạng lưới của Cloudflare. “Tương thích S3” nghĩa là nó nói cùng API như Amazon S3, nên các công cụ, SDK và thư viện hiện có hoạt động với thay đổi tối thiểu: bạn trỏ chúng tới điểm cuối của R2 và dùng thông tin xác thực R2. Bạn có bucket, đối tượng, metadata, tải lên nhiều phần và quy tắc vòng đời, giống hệt S3, nhưng không có phí egress và không bị khóa nhà cung cấp.

Riêng với hình ảnh, R2 mang lại cho bản gốc của bạn một ngôi nhà bền vững vốn đã nằm sẵn bên trong mạng lưới sẽ tối ưu và phân phối chúng.

Giá R2 cho lưu trữ hình ảnh

Các con số đơn giản đến sảng khoái. Dựa trên giá R2 chính thức cho năm 2026:

Bạn trả cho điều gìChi phí
Lưu trữ tiêu chuẩn0,015 USD mỗi GB / tháng
Thao tác Class A (ghi, tải lên)4,50 USD mỗi triệu
Thao tác Class B (đọc)0,36 USD mỗi triệu
Egress (băng thông đi ra)0 USD (miễn phí)

Và hạn mức miễn phí hằng tháng, vốn bao phủ một lượng sử dụng thực tế đáng ngạc nhiên:

Hạn mức miễn phí (lưu trữ tiêu chuẩn)Lượng
Lưu trữ10 GB-tháng
Thao tác Class A1 triệu
Thao tác Class B10 triệu

Một ví dụ thực tế: một trang portfolio với 20 GB hình ảnh gốc phục vụ cho một lượng khán giả sôi động trả 0,15 USD mỗi tháng cho 10 GB vượt hạn mức miễn phí, và không trả gì cho băng thông, dù bao nhiêu khách truy cập xem những hình ảnh đó. Tôi phân tích mô hình chi phí kỹ hơn, bao gồm cả lớp lưu trữ Infrequent Access, trong hướng dẫn giá R2 của tôi.

Thiết lập lưu trữ hình ảnh R2 như một CDN

Đây là lộ trình thực tế từ một tài khoản trống đến một CDN hình ảnh hoạt động.

  1. Tạo một bucket. Trong bảng điều khiển Cloudflare, mở R2 và tạo một bucket, ví dụ my-site-images.
  2. Tải hình ảnh lên. Dùng bảng điều khiển, API tương thích S3, hoặc ứng dụng máy tính miễn phí Easy Cloudflare R2 , hỗ trợ tải lên bằng kéo và thả, thư mục, và chỉnh sửa metadata trên Windows, macOS và Linux.
  3. Kết nối một tên miền tùy chỉnh. Trong cài đặt của bucket, gắn một tên miền tùy chỉnh như images.example.com. Đây là cách được khuyến nghị để công khai một bucket: nó định tuyến tự động qua bộ nhớ đệm và biên của Cloudflare, nên hình ảnh của bạn được phục vụ nhanh và trên toàn cầu.
  4. Đặt header bộ nhớ đệm. Thêm một giá trị Cache-Control dài (ví dụ public, max-age=31536000, immutable) trên các đối tượng hình ảnh để biên lưu đệm chúng tích cực. Bạn có thể đặt từng đối tượng khi tải lên.
  5. Tham chiếu hình ảnh. Hình ảnh của bạn giờ có sẵn tại https://images.example.com/<path>, được phục vụ từ mạng lưới của Cloudflare với chi phí egress bằng không.

Một lưu ý về truy cập: không công khai thông tin xác thực API S3 của bạn. Phục vụ hình ảnh qua một tên miền tùy chỉnh đã kết nối (đọc công khai) và giữ các khóa S3 chỉ cho việc tải lên và quản lý. Nếu một token bị lộ, bạn có thể giới hạn token API R2 theo IP trong bảng điều khiển.

Thêm tối ưu tức thời

Lưu trữ và phục vụ từ R2 giải quyết bài toán chi phí. Để cũng đạt hiệu năng và Core Web Vitals, hãy đặt Cloudflare Image Transformations lên trên. Biến đổi thay đổi kích thước và chuyển đổi theo yêu cầu các bản gốc lưu trên R2 sang WebP hoặc AVIF, nên bạn lưu một tệp gốc và phục vụ cho mọi thiết bị một hình ảnh có kích thước hoàn hảo, định dạng hiện đại.

Một URL biến đổi trỏ tới một hình ảnh dựa trên R2 trông như thế này:

1https://images.example.com/cdn-cgi/image/width=800,quality=75,format=auto/photo.jpg

Vì R2 không có phí egress và 5.000 lượt biến đổi duy nhất đầu tiên mỗi tháng là miễn phí, một trang nhỏ có thể vận hành một CDN hình ảnh được tối ưu hoàn toàn chỉ với vài xu. Sự kết hợp R2 cộng biến đổi này, theo kinh nghiệm của tôi, là cách tiết kiệm chi phí nhất để lưu trữ và phục vụ hình ảnh ở bất kỳ quy mô nào trong năm 2026.

R2 vs S3 cho hình ảnh: so sánh thẳng thắn

Tiêu chíCloudflare R2Amazon S3
Phí egressKhông~0,09 USD mỗi GB
Giá lưu trữ0,015 USD mỗi GB~0,023 USD mỗi GB (Tiêu chuẩn)
Tương thích APITương thích S3S3 nguyên bản
Phân phối biênTích hợp trong CloudflareCần CloudFront (chi phí thêm)
Hạn mức miễn phí10 GB + thao tác mỗi tháng5 GB chỉ trong 12 tháng
Phù hợp nhất choBất cứ thứ gì phục vụ công khaiTích hợp AWS sâu

S3 vẫn là một sản phẩm xuất sắc nếu bạn đầu tư sâu vào AWS và cần hệ sinh thái bao quanh nó. Nhưng thuần túy để lưu trữ và phục vụ hình ảnh, R2 thắng ở hai chỉ số quan trọng nhất cho tải công việc đó: egress (miễn phí vs tính theo lượng) và phân phối biên tích hợp (bao gồm vs một hóa đơn CloudFront riêng).

Quản lý hình ảnh mà không cần dòng lệnh

Tải lên và sắp xếp hàng nghìn hình ảnh qua bảng điều khiển hoặc các lệnh gọi API thô thì chậm. Tôi đã xây dựng Easy Cloudflare R2 , một ứng dụng máy tính miễn phí, đa nền tảng, đúng để làm việc này dễ chịu: duyệt các bucket như thư mục, kéo tệp thẳng từ máy tính của bạn, gắn metadata tùy chỉnh và header cache-control, xử lý các lượt tải lên nhiều phần lớn, và xem các chỉ số lưu trữ và thao tác, tất cả từ một giao diện gọn gàng. Các khóa API của bạn được giữ mã hóa trên máy của chính bạn và không bao giờ được truyền đi đâu khác.

Những điểm chính

  • Phí egress bằng không của R2 là lý do lớn nhất duy nhất để chọn nó cho lưu trữ hình ảnh R2; băng thông không bao giờ xuất hiện trên hóa đơn của bạn
  • Lưu trữ là 0,015 USD mỗi GB mỗi tháng với một hạn mức miễn phí thực sự hữu ích 10 GB cộng các thao tác hằng tháng
  • Kết nối một tên miền tùy chỉnh để phục vụ hình ảnh tự động từ biên của Cloudflare, với bộ nhớ đệm tích cực
  • Đặt biến đổi hình ảnh lên trên để cung cấp WebP/AVIF đã tối ưu từ một bản gốc đã lưu duy nhất
  • Cho lưu trữ hình ảnh thuần túy, R2 thắng S3 ở egress và phân phối biên tích hợp; S3 vẫn thắng ở tích hợp AWS sâu
  • Dùng ứng dụng miễn phí Easy Cloudflare R2 của tôi để quản lý các lượt tải lên và bucket một cách trực quan

Câu hỏi thường gặp

Cloudflare R2 thực sự không có phí egress sao? Có. R2 không tính gì cho băng thông egress trên mọi lớp lưu trữ. Bạn chỉ trả cho lưu trữ và các thao tác Class A và Class B. Đây là khác biệt mang tính định nghĩa so với S3 và phần lớn các nhà cung cấp lưu trữ đối tượng khác.

Làm sao để phục vụ hình ảnh R2 công khai? Kết nối một tên miền tùy chỉnh với bucket của bạn trong cài đặt R2. Yêu cầu tới tên miền đó được phục vụ qua bộ nhớ đệm và mạng biên của Cloudflare. Cách này tốt hơn việc công khai điểm cuối API S3 hay thông tin xác thực.

Tôi có thể thay đổi kích thước và tối ưu hình ảnh lưu trong R2 không? Có. Dùng Cloudflare Image Transformations để thay đổi kích thước, nén và chuyển đổi tức thời các hình ảnh lưu trên R2 sang WebP hoặc AVIF. Bạn lưu một bản gốc và phục vụ một phiên bản đã tối ưu, có kích thước phù hợp cho từng thiết bị.

R2 có rẻ hơn Amazon S3 cho hình ảnh không? Để phục vụ hình ảnh công khai, hầu như luôn luôn, vì R2 loại bỏ phí egress và bao gồm phân phối biên. S3 tính khoảng 0,09 USD mỗi GB egress và cần CloudFront cho phân phối biên, làm tăng thêm chi phí. Mức giá lưu trữ của R2 cũng thấp hơn một chút.

Hạn mức miễn phí của R2 là gì? Mỗi tháng bạn nhận được 10 GB lưu trữ tiêu chuẩn, 1 triệu thao tác Class A và 10 triệu thao tác Class B miễn phí. Với nhiều trang nhỏ, việc lưu trữ hình ảnh nằm trong hoặc chỉ nhỉnh hơn hạn mức này.

Làm sao để tải nhiều hình ảnh lên R2 dễ dàng? Dùng ứng dụng máy tính miễn phí Easy Cloudflare R2 của tôi để tải lên bằng kéo và thả, sắp xếp thư mục và chỉnh sửa metadata, hoặc dùng bất kỳ công cụ tương thích S3 nào trỏ tới điểm cuối của R2.