Asosiy kontentga o‘tish
Innovialabs

Cloudflare R2 yoki AWS S3: saqlash va trafik narxi

Amaliyot3 daq

Qisqacha

Asosiy farq — R2 chiquvchi trafik uchun haq olmaydi, S3 esa internetga berilgan har bir gigabayt uchun to‘lov oladi. Shuning uchun foydalanuvchilar tez-tez yuklab oladigan fayllar uchun R2, AWS ichida qayta ishlanadigan yoki arzon arxivga ketadigan ma’lumotlar uchun S3 foydaliroq.

Qisqa javob

  • Cloudflare R2 — agar fayllar internetga ko‘p tarqatilsa: media, foydalanuvchilar yuklagan fayllar, distributivlar, ochiq datasetlar. Chiquvchi trafik bepul, siz saqlash va operatsiyalar uchun to‘laysiz.
  • AWS S3 — agar ma’lumotlar AWS xizmatlarida (EC2, Lambda, Athena) qayta ishlansa, arxiv saqlash sinflari yoki IAM va AWS hodisalari bilan chuqur integratsiya kerak bo‘lsa.

Ikkalasi ham S3 bilan mos API’ga ega obyekt omborlari, shuning uchun kod va vositalar asosan bir xil.

Narx nimalardan iborat

Xarajat moddasiAWS S3Cloudflare R2
SaqlashOyiga GB uchun, narx saqlash sinfiga bog‘liqOyiga GB uchun, Standard va Infrequent Access sinflari
Yozish va ro‘yxat olishPUT/COPY/POST/LIST so‘rovlari sifatida to‘lanadiA sinf operatsiyalari
O‘qishGET va shunga o‘xshash so‘rovlar sifatida to‘lanadiB sinf operatsiyalari
Internetga chiquvchi trafikHar bir GB uchun to‘lanadiTo‘lanmaydi
Mintaqalar orasidagi trafikTo‘lanadiAlohida trafik to‘lovi yo‘q
«Sovuq» sinflardan olishTo‘lanadiInfrequent Access uchun to‘lanadi
Bepul darajaBorBor, oylik

Aniq stavkalar mintaqaga bog‘liq va vaqti-vaqti bilan o‘zgaradi — ularni tarif sahifalarida tekshiring.

Nega hamma narsani egress hal qiladi

Chiquvchi trafik (egress) uchun to‘lov boshida sezilmaydi va mashhurlik bilan tez o‘sadi. Oddiy hisob: 10 000 marta yuklab olingan 100 MB’lik fayl — taxminan 1 TB chiquvchi trafik.

  • S3’da shu terabaytning har bir gigabayti va 10 000 ta GET-so‘rov uchun to‘laysiz.
  • R2’da faqat 10 000 ta o‘qish operatsiyasi uchun to‘laysiz.

«Yuklab olingan / saqlanayotgan» nisbati qanchalik katta bo‘lsa, R2 shunchalik foydali. Agar ma’lumotlar yillab yotsa va deyarli o‘qilmasa, egress rol o‘ynamaydi — saqlash narxi va arxiv sinflari hal qiladi, bu yerda S3’da tanlov kengroq.

AWS’ning bir nozik jihati: S3’dan CloudFront’ga trafik uchun haq olinmaydi, shuning uchun S3 + CloudFront birikmasi xarajatni kamaytiradi. Lekin endi CloudFront trafigi uchun to‘laysiz.

API mosligi

R2 S3 API’ni amalga oshiradi va ko‘pchilik SDK hamda vositalar (AWS SDK, AWS CLI, rclone) manzil va kalitlar almashtirilgach ishlaydi:

import { S3Client, PutObjectCommand } from "@aws-sdk/client-s3";

const r2 = new S3Client({
  region: "auto",
  endpoint: `https://${process.env.R2_ACCOUNT_ID}.r2.cloudflarestorage.com`,
  credentials: {
    accessKeyId: process.env.R2_ACCESS_KEY_ID,
    secretAccessKey: process.env.R2_SECRET_ACCESS_KEY,
  },
});

await r2.send(new PutObjectCommand({ Bucket: "media", Key: "a.jpg", Body: file }));

Farqlar baribir bor: R2’da huquqlar IAM siyosatlari emas, API-tokenlar orqali beriladi, S3’ning ayrim imkoniyatlari esa yo‘q yoki boshqacha ishlaydi. Ko‘chishdan oldin kodingiz ishlatadigan har bir operatsiyani Cloudflare hujjatlari bo‘yicha tekshiring.

Unumdorlik

  • S3’ni aniq mintaqada joylashtirasiz. Eng kichik kechikish — xuddi shu AWS mintaqasidagi xizmatlar uchun.
  • R2 joylashuvni avtomatik tanlaydi (joylashuv bo‘yicha maslahat berish mumkin). Ommaviy fayllarni o‘z domeningiz orqali tarqatish qulay — shunda Cloudflare keshi ishlaydi.

Foydalanuvchilar uchun ombordan ko‘ra uning oldidagi CDN va backend’gacha bo‘lgan masofa muhimroq.

Qaysi vazifalar qaysi biridan yutadi

R2:

  • saytda ko‘rsatiladigan rasmlar, videolar va foydalanuvchi yuklagan fayllar;
  • ilovalar, yangilanishlar va datasetlarni tarqatish;
  • turli provayderlardagi serverlar bir xil ma’lumotni o‘qiydigan multibulut arxitektura;
  • allaqachon Cloudflare orqali ishlayotgan saytlar.

S3:

  • AWS ichida qayta ishlanadigan ma’lumotlar: analitika, ETL, mashinaviy o‘qitish;
  • deyarli o‘qilmaydigan uzoq muddatli arxivlar va zaxira nusxalar;
  • S3 hodisalari, nozik IAM siyosatlari va muvofiqlik talablari kerak bo‘lgan loyihalar.

Ularni birga ishlatish mumkin: asl nusxalar va arxivni S3’da saqlab, ommaviy nusxalarni R2’dan tarqatish.

Yashirin xarajatlar

  • Ko‘plab mayda obyektlar — ikkala xizmatda ham operatsiyalar uchun hisob saqlash hisobidan oshib ketishi mumkin.
  • AWS’dagi NAT Gateway — agar xususiy subnetdagi serverlar S3’ga NAT orqali murojaat qilsa, bu trafik to‘lanadi. S3 uchun VPC gateway endpoint’dan foydalaning.
  • Ikkala xizmatda ham «sovuq» sinflarning minimal saqlash muddati va olish to‘lovi.

Ko‘p beriladigan savollar

Yo‘q. Agar ma’lumotlar internetga kam chiqsa va AWS ichida qayta ishlansa, narxdagi farq kichik, arxivlar uchun esa Glacier sinflari bilan S3 arzonroq bo‘lishi mumkin.

Bunda yordam beramiz

O‘zingiz shug‘ullanmasdan natija olishni istasangiz — biz har kuni shu bilan shug‘ullanamiz.

Loyihani muhokama qilish

Yana o‘qing

G‘oya yoki vazifangiz bormi? Bizga aytib bering

Ish kuni davomida javob beramiz va yechim taklif qilamiz. Konsultatsiya bepul.