İçeriğe atla
Cloudflare Wiki

    gez · aç · Esc kapat

    R2

    S3 uyumlu object storage — çıkış (egress) trafiği ücretsiz.

    • DurumGenel kullanımda
    • FiyatDepolama + Class A/B işlem sayısı; egress ücretsiz
    • Ücretsiz katmanvar
    • Doğrulama

    R2 nedir?

    R2, S3 API’siyle uyumlu bir object storage servisidir. Resmî tanım:

    “Cloudflare R2 is an S3-compatible object storage service with no egress fees, built on Cloudflare’s global network. It is strongly consistent and designed for high data durability.”

    Çözdüğü problem tek cümleyle: “store large amounts of unstructured data without the costly egress bandwidth fees associated with typical cloud storage services.”

    Dayanıklılık %99,999999999 (on bir dokuz), erişilebilirlik SLA’sı %99,9.

    Nasıl çalışır?

    Mimari

    Dört bileşen: R2 Gateway (Workers üzerinde çalışan kimlik doğrulama ve yönlendirme katmanı), Metadata Service (Durable Objects üzerine kurulu dağıtık metadata katmanı), Tiered Read Cache ve dağıtık depolama altyapısı.

    Yazma yolunun sonu önemli: “Only after this commit is an HTTP 200 success response sent to the client, preventing unacknowledged writes.”

    Tutarlılık — R2’nin en güçlü yanı

    Şunların hepsi güçlü tutarlı: yazma sonrası okuma, metadata güncellemeleri, silme, ve nesne listeleme. Yalnızca IAM eventual consistent (“may take up to a minute”).

    S3 uyumluluğu — ne var, ne yok

    Endpoint: https://<HESAP_ID>.r2.cloudflarestorage.com. Bölge her zaman auto; uyumluluk için boş değer ve us-east-1 de kabul edilir.

    Uygulanmış nesne işlemleri: HeadObject, ListObjects, GetObject, PutObject, DeleteObject, DeleteObjects, CopyObject, ve tüm multipart işlemleri.

    Uygulanmamış — dürüst boşluklar:

    EksikSonucu
    VersioningÜzerine yazma geri alınamaz
    Bucket policy / ACLYalnızca 4 izin seviyesi var, policy dili yok
    Object taggingEtiket bazlı lifecycle ve maliyet dağıtımı yapılamaz
    ReplicationBölgeler arası kopyalama yok
    S3 Inventory, Intelligent-TieringYok

    R2’ye özel eklentiler: PutObject’te cf-create-bucket-if-missing: true başlığı, CopyObject’te x-amz-metadata-directive: MERGE, ve 1.000’den fazla bucket’ı olan hesaplar için genişletilmiş ListBuckets.

    Multipart upload

    KısıtDeğer
    En küçük parça (son hariç)5 MiB
    En büyük parça5 GiB
    En fazla parça10.000
    Yarım kalan yükleme7 gün sonra otomatik iptal

    Genel erişim — iki ayrı mekanizma

    Custom domainr2.dev
    Üretim✅ önerilen“intended for non-production traffic”
    WAF, Cache, Access, Bot Management
    Hız sınırınormalyüzlerce istek/sn → 429

    Yaşam döngüsü (lifecycle)

    Bucket başına en fazla 1.000 kural, önek bazlı. Nesneler x-amz-expiration değerinden sonra genellikle 24 saat içinde silinir.

    Maliyet açısından kritik iki nokta:

    • “When an object is transitioned from Standard storage to Infrequent Access storage, a Class A operation is incurred.” — her geçiş faturalanır.
    • “Once an object is stored in Infrequent Access, it cannot be transitioned to Standard Access using lifecycle policies.” — geri dönüş yok.

    Yargı bölgeleri ve konum ipuçları

    Ne yaparGaranti mi
    Location Hint (wnam, enam, weur, eeur, apac, oc)Bucket’ı bir bölgeye yaklaştırmaya çalışırHayır, en iyi çaba
    Jurisdiction (eu, us, fedramp)Veriyi o yargı alanında tutarEvet

    Location Hint bir kez uygulanır: “Location Hints are only honored the first time a bucket with a given name is created.” Aynı adla silip yeniden oluşturursan eski konum korunur.

    Türkiye için tanımlı bir yargı bölgesi yoktur. En yakını AB.

    Ne zaman kullanılır, ne zaman kullanılmaz

    Uygun olduğu işler

    • Medya ve dosya dağıtımı — egress ücretsizliği burada en çok işe yarar
    • Yedekleme ve arşiv
    • Kullanıcı yüklemeleri
    • Statik varlık barındırma
    • Veri gölü depolama katmanı (Iceberg tabloları için)

    Uygun olmadığı işler

    • Versiyonlama gerekiyorsa. Uygulanmamış; yanlış yazma geri alınamaz.
    • Object tagging ile maliyet dağıtımı yapıyorsan. Yalnızca önek bazlı kurallar var.
    • İnce taneli IAM politikası gerekiyorsa. Policy dili yok, 4 izin seviyesi var.
    • Bölgeler arası replikasyon gerekiyorsa. Yok.
    • Derin arşiv katmanı arıyorsan. Yalnızca Standard ve Infrequent Access var; Glacier benzeri bir katman yok. IA’nın 0,01 USD/GB-ay fiyatı gerçek bir derin arşiv katmanının yaklaşık 3 katıdır.
    • Tek bir sıcak nesneye yüksek eşzamanlı yazma yapıyorsan. Aynı anahtara saniyede 1 yazma sınırı var, aşınca 429.
    • Verinin Türkiye’de kalması gerekiyorsa. tr yargı bölgesi yok.

    S3 karşılaştırması

    Bu, Türk kullanıcıların R2’ye bakma sebebinin neredeyse tamamı. Dürüst cevap şu:

    Örnek hesap — medya dağıtımı

    10 TB depolama, ayda 100 TB egress, 5 milyon yazma, 200 milyon okuma:

    KalemHesapTutar
    Depolama(10.000 − 10 ücretsiz) GB-ay × 0,015 USD149,85 USD
    Class A(5M − 1M ücretsiz) = 4M × 4,50 USD/M18,00 USD
    Class B(200M − 10M ücretsiz) = 190M × 0,36 USD/M68,40 USD
    Egress (100 TB)ücretsiz0,00 USD
    R2 toplam236,25 USD

    Aynı iş yükünü S3’te hesaplarken belirleyici satır veri çıkışıdır ve 100 TB’ta bu kalem tek başına yukarıdaki toplamın kat kat üstüne çıkar. AWS fiyatlarını bu portalda yayımlamıyoruz; kendi hesabını AWS’nin resmî fiyat sayfasından doğrula.

    “Egress ücretsiz”in dört kaydı

    1. Egress ücretsiz ama istek değil. Her okuma bir Class B işlemi. Çok sayıda küçük dosya sunan bir iş yükü bant genişliğinden değil, işlem sayısından faturalanır.
    2. Worker üzerinden servis edersen Workers ücreti eklenir. Resmî ifade: “Since Cloudflare Workers runs before the Cloudflare cache, the caching of a request still incurs costs.”
    3. r2.dev ücretsiz ama üretime uygun değil. Hız sınırlı.
    4. Infrequent Access’te egress ücretsiz ama retrieval değil. 0,01 USD/GB, artı 30 günlük minimum.

    Somut örnekler

    1. Worker ile kimlik doğrulamalı yükleme ve indirme

    {
      "r2_buckets": [{ "binding": "KOVA", "bucket_name": "medya-varliklari" }]
    }
    export default {
      async fetch(request, env) {
        const url = new URL(request.url);
        const anahtar = url.pathname.slice(1);
    
        switch (request.method) {
          case "PUT":
            await env.KOVA.put(anahtar, request.body, {
              httpMetadata: { contentType: request.headers.get("content-type") },
              storageClass: "Standard",
            });
            return new Response(`${anahtar} yüklendi`);
    
          case "GET": {
            const nesne = await env.KOVA.get(anahtar);
            if (nesne === null) return new Response("Bulunamadı", { status: 404 });
    
            const headers = new Headers();
            nesne.writeHttpMetadata(headers);
            headers.set("etag", nesne.httpEtag);
            return new Response(nesne.body, { headers });
          }
    
          default:
            return new Response("İzin verilmeyen metot", {
              status: 405, headers: { Allow: "PUT, GET" },
            });
        }
      },
    };

    2. Presigned URL ile doğrudan tarayıcıdan yükleme

    Dosya senin sunucundan geçmez — bant genişliği ve CPU tasarrufu.

    import { S3Client, PutObjectCommand } from "@aws-sdk/client-s3";
    import { getSignedUrl } from "@aws-sdk/s3-request-presigner";
    
    const S3 = new S3Client({
      region: "auto",   // SDK istiyor, R2 kullanmıyor
      endpoint: `https://${HESAP_ID}.r2.cloudflarestorage.com`,
      credentials: { accessKeyId: ANAHTAR_ID, secretAccessKey: GIZLI_ANAHTAR },
    });
    
    const yuklemeUrl = await getSignedUrl(
      S3,
      new PutObjectCommand({
        Bucket: "medya-varliklari",
        Key: `yuklemeler/${crypto.randomUUID()}.png`,
        ContentType: "image/png",   // yalnızca bu türe izin verir
      }),
      { expiresIn: 3600 },          // 1 saniye – 7 gün arası
    );

    3. Yedekleme — otomatik katman geçişi

    import boto3
    
    s3 = boto3.client(
        service_name="s3",
        endpoint_url=f"https://{HESAP_ID}.r2.cloudflarestorage.com",
        aws_access_key_id=ANAHTAR_ID,
        aws_secret_access_key=GIZLI_ANAHTAR,
        region_name="auto",
    )
    s3.upload_file("yedek.dump", "yedekler", "db/2026-09-01.dump")

    Yaşam döngüsü kuralları:

    # 30 gün sonra ucuz katmana geç
    npx wrangler r2 bucket lifecycle add yedekler eskiyi-tasi "db/" --ia-transition-days 30
    # 1 yıl sonra sil
    npx wrangler r2 bucket lifecycle add yedekler eskiyi-sil "db/" --expire-days 365
    # yarım kalan yüklemeleri temizle
    npx wrangler r2 bucket lifecycle add yedekler mpu-temizle "" --abort-multipart-days 3

    4. Olay tabanlı işlem hattı — yükleme → Queue → Worker

    npx wrangler r2 bucket notification create medya-varliklari \
      --event-types object-create --queue islem-kuyrugu --suffix ".mp4"

    Kuyruğa düşen mesaj:

    {
      "account": "3f4b7e3d...",
      "action": "PutObject",
      "bucket": "medya-varliklari",
      "object": { "key": "video/tanitim.mp4", "size": 65536, "eTag": "c846ff..." },
      "eventTime": "2026-09-01T19:36:44.379Z"
    }

    Bucket başına en fazla 100 bildirim kuralı; önek ve sonek filtresi var, regex yok.

    5. Uyum arşivi — WORM

    npx wrangler r2 bucket lock add uyum-loglari
    npx wrangler r2 bucket lock list uyum-loglari

    Resmî tanım: “Bucket locks prevent the deletion and overwriting of objects in an R2 bucket for a specified period — or indefinitely.”

    Demo 1: Bucket kurup custom domain ile yayınlama

    Adım 1 — Bucket oluştur

    npx wrangler r2 bucket create demo-kova --location weur
    npx wrangler r2 bucket info demo-kova
    Terminal — bucket oluşturma onayı ve info çıktısında konum, depolama sınıfı bilgileri

    Adım 2 — Nesne yükle

    npx wrangler r2 object put demo-kova/merhaba.txt --file ./merhaba.txt
    npx wrangler r2 object get demo-kova/merhaba.txt
    İki komutun çıktısı — yükleme onayı ve okunan içerik

    Adım 3 — Custom domain bağla

    npx wrangler r2 bucket domain add demo-kova \
      --domain varlik.alanadin.com --zone-id <ZONE_ID> --min-tls 1.2
    npx wrangler r2 bucket domain list demo-kova
    Panel veya CLI çıktısı — custom domain kaydı ve sertifika durumu

    Adım 4 — dev URL’i kapat

    npx wrangler r2 bucket dev-url disable demo-kova
    İki curl çıktısı — kapatmadan önce erişilebilen r2.dev adresinin sonra erişilemez olması

    Adım 5 — WAF kuralının çalıştığını doğrula

    Bir WAF kuralı tanımlanmış hâlde, custom domain üzerinden yapılan isteğin engellendiği

    Adım 6 — Presigned URL ile tarayıcıdan yükleme

    Tarayıcı geliştirici araçları — PUT isteğinin doğrudan r2.cloudflarestorage.com'a gittiği, kendi sunucudan geçmediği

    Demo 2: Şirket içi MinIO’dan R2’ye geçiş

    Bu demoyu senin on-prem MinIO kurulumunla yapacağız — S3 uyumluluğunun gerçekte ne kadar sorunsuz olduğunu ölçmek için.

    Adım 1 — Kaynak MinIO’yu hazırla

    MinIO web konsolu — taşınacak bucket ve içindeki nesne sayısı, toplam boyut

    Adım 2 — Super Slurper ile toplu taşıma

    R2 → Data Migration → kaynak olarak S3 uyumlu sağlayıcı seçilmiş, endpoint ve kimlik bilgileri girilmiş ekran
    Taşıma işinin ilerleme ekranı — kopyalanan nesne sayısı, hız ve tahmini bitiş

    Adım 3 — Aynı kodu iki hedefe karşı çalıştır

    Uygulama kodunda yalnızca endpoint değiştirilir.

    İki terminal çıktısı yan yana — aynı script'in iki farklı endpoint ile aynı sonucu vermesi

    Adım 4 — Uyumsuzlukları bul

    Versioning, tagging ve multipart parça boyutu testlerini çalıştır.

    PutBucketVersioning ve PutObjectTagging çağrılarının döndürdüğü hata mesajları
    Farklı boyutlu parçalarla yapılan multipart yüklemenin hata vermesi; aynı testin MinIO'da geçmesi

    Adım 5 — Gecikme ve maliyet karşılaştırması

    Farklı coğrafyalardan yapılan indirme testlerinin süreleri — on-prem MinIO ile R2 yan yana

    Ölçüm

    ÖlçütMinIO (on-prem)R2
    Taşınan nesne sayısı
    Taşıma süresi
    Yurt içinden indirme gecikmesi
    Yurt dışından indirme gecikmesi
    Çalışmayan S3 işlemi sayısı
    Aylık tahmini maliyet

    Fiyatlandırma

    Rakamlar 1 Eylül 2026’da üç bağımsız resmî sayfadan doğrulanmıştır.

    StandardInfrequent Access
    Depolama0,015 USD / GB-ay0,01 USD / GB-ay
    Class A işlem (yazma)4,50 USD / milyon9,00 USD / milyon
    Class B işlem (okuma)0,36 USD / milyon0,90 USD / milyon
    Veri çekme (retrieval)yok0,01 USD / GB
    EgressÜcretsizÜcretsiz
    Minimum saklama süresiyok30 gün

    Ücretsiz katman: ayda 10 GB-ay depolama, 1 milyon Class A, 10 milyon Class B. Yalnızca Standard için geçerlidir.

    Ücretsiz işlemler: DeleteObject, DeleteBucket, AbortMultipartUpload. Ayrıca yetkisiz istekler (HTTP 401) faturalanmaz.

    Infrequent Access tuzağı

    Cloudflare’in kendi iki örneği:

    SenaryoKatmanToplam
    1.000 nesne × 1 GB, 1 ay saklandı, her biri 1.000 kez okunduStandard14,85 USD
    Aynı iş yükü, yalnızca 5 gün saklandıInfrequent Access29,90 USD

    IA yalnızca gerçekten seyrek okunan ve uzun süre duran veri için ucuzdur.

    Lisanslama ve hukuki çerçeve

    R2 tescilli bir hizmettir; Cloudflare Hizmet Şartları kapsamındadır. Yüklediğin verinin mülkiyeti sende kalır.

    Şifreleme. Dinlenme hâlinde AES-256 GCM, Cloudflare yönetimli anahtarlarla, otomatik ve kapatılamaz. Kendi anahtarını kullanmak istersen SSE-C desteklenir — ama resmî uyarı sert: “In the event you misplace them, Cloudflare will be unable to recover the body of any objects encrypted using those keys.”

    Veri yerleşimi ve KVKK. Yargı bölgesi kısıtı gerçek bir garantidir: eu seçildiğinde endpoint değişir ve o yargı alanı dışından erişilemez. Türkiye için tanımlı bölge yoktur. Verinin Türkiye’de kalması gereken bir yükümlülüğün varsa R2 tek başına bunu karşılamaz.

    Limitler

    ÖzellikSınır
    Bucket başına depolamaSınırsız
    Bucket başına nesneSınırsız
    Hesap başına bucket1.000.000
    Nesne boyutu5 TiB (pratikte 4,995 TiB)
    Tek parça yükleme5 GiB
    Multipart parça sayısı10.000
    Nesne anahtarı uzunluğu1.024 bayt
    Nesne metadata boyutu8.192 bayt
    Bucket başına custom domain100
    Bucket başına lifecycle kuralı1.000
    Bucket başına bildirim kuralı100
    Aynı anahtara eşzamanlı yazmasaniyede 1
    Bucket yönetim işlemisaniyede 50
    Presigned URL geçerlilik1 saniye – 7 gün
    REST API hız sınırı5 dakikada 1.200 istek (hesap geneli)

    Bucket adı kuralları: 3–63 karakter, yalnızca küçük harf, rakam ve tire; tireyle başlayamaz veya bitemez.

    Sık yapılan hatalar

    Custom domain ekleyip r2.dev’i açık bırakmak. WAF, Access ve Bot Management sessizce atlatılabilir hâle gelir.

    r2.dev’e CNAME çekmek. Resmî olarak desteklenmeyen erişim yolu.

    Object seviyesi token’ı REST API’ye karşı kullanmak. Object token’ları yalnızca S3 API içindir; REST API 401 veya 403 döner.

    REST API ile toplu nesne işlemi yapmak. 5 dakikada 1.200 istek sınırı var; S3 API veya Workers API kullan.

    Değişken boyutlu multipart parçalar. S3’te çalışır, R2’de çalışmaz.

    Location Hint’i garanti sanmak. En iyi çabadır ve bucket adının ilk oluşturulmasına sabitlenir.

    Infrequent Access’i her zaman ucuz sanmak. 30 günlük minimum ve retrieval ücreti kısa ömürlü veride onu pahalı yapar.

    list() sonucunu limit ile karşılaştırmak. Resmî uyarı: “applications must be careful to avoid comparing the amount of returned objects against your limit. Instead, use the truncated property.”

    CORS sorununu CORS sanmak. Önce cf-mitigated başlığına (WAF engellemiş) ve cf-cache-status eksikliğine (Hotlink Protection engellemiş) bak.

    Lifecycle geçişinin Class A ücreti doğurduğunu unutmak. Her Standard → IA geçişi faturalanır.

    Sıkça sorulan sorular

    R2 kullanmak için Workers Paid planı şart mı?
    Büyük ihtimalle hayır — R2'nin kendi aboneliği var: “You need a Cloudflare account with an R2 subscription… Complete the checkout flow to add an R2 subscription.” Ayrıca Workers fiyat sayfası Paid planın kapsadığı ürünleri sayarken R2'yi listelemiyor: “The Workers Paid plan includes Workers, Pages Functions, Workers KV, Hyperdrive, and Durable Objects usage.” Yani R2 bağımsız faturalanıyor gibi görünüyor. Ama Cloudflare bunu olumsuz bir cümleyle hiçbir yerde yazmıyor, dolayısıyla kesin ifade kullanmıyoruz. Faturalandırma kararı vermeden önce hesap ekibinizle teyit edin.
    “Egress ücretsiz” gerçekten sınırsız mı?
    Bant genişliği evet, ama her okuma bir Class B işlemidir (milyon başına 0,36 USD). Resmî dipnot da bir kayıt düşüyor: “If you connect other metered services to an R2 bucket, you may be charged by those services.” Yani Worker üzerinden servis ediyorsan Workers istekleri ayrıca faturalanır. Cloudflare'in kendi örneği bunu net gösteriyor: 100.000 dosya × 100 KB, günde 10 milyon okuma → ayda 104,40 USD, ve bunun tamamı Class B işlem ücreti; depolama ve egress 0,00 USD.
    S3 kodum değişmeden çalışır mı?
    Büyük ölçüde. Endpoint'i https://<HESAP_ID>.r2.cloudflarestorage.com yapıp region: "auto" vermen yeterli. Ama şunlar uygulanmamış: versioning, bucket policy, ACL, replication, object tagging, S3 Inventory, Intelligent-Tiering. Ayrıca multipart'ta R2 ek bir kısıt koyar: “All parts except the last must be the same size” — S3'te böyle bir şart yok.
    Versiyonlama var mı? Yanlışlıkla üzerine yazarsam?
    Yok. PutBucketVersioning uygulanmamış ve aynı anahtara iki yazmada son yazan kazanır. Bu, S3'ten geçenlerin en çok şaşırdığı eksiklik. Korunma yolları: Bucket Locks (silme ve üzerine yazmayı belirli süre engeller), bucket kapsamlı token'lar, ve yazma yolunu Worker üzerinden geçirip kendi sürümlemeni yapmak.
    Infrequent Access her zaman daha mı ucuz?
    Hayır — sık okunan veride daha pahalı. Cloudflare'in kendi iki örneği bunu kanıtlıyor: aynı iş yükü Standard'da 14,85 USD, Infrequent Access'te sadece 5 gün tutulduğunda 29,90 USD. Sebep üçlü: 30 günlük minimum saklama süresi, 0,01 USD/GB retrieval ücreti, ve 25 kat pahalı Class A işlemi (milyon başına 9,00 USD). Ayrıca ücretsiz katman IA'ya uygulanmaz.
    Verimi Türkiye'de tutabilir miyim?
    Hayır. R2'nin yargı bölgeleri yalnızca eu, us ve fedramp. Türkiye için tanımlı bir bölge yok. En yakını AB: endpoint https://<HESAP_ID>.eu.r2.cloudflarestorage.com olur ve “you will not be able to access R2 resources outside of that jurisdiction.” Location Hint (weur, eeur) ise garanti değil, yalnızca en iyi çaba.
    r2.dev adresini üretimde kullanabilir miyim?
    Hayır. Resmî ifade: “This endpoint is intended for non-production traffic.” Yüzlerce istek/saniyede 429 döner ve throughput da kısıtlanır. Ayrıca r2.dev'e CNAME çekmek “an unsupported access path” olarak işaretli. Üretimde custom domain kullan.
    Custom domain ekledim, WAF kuralım neden atlanıyor?
    Çünkü r2.dev hâlâ açık. Custom domain eklemek dev URL'i kapatmaz — ikisini ayrı ayrı yönetirsin. Bucket hâlâ r2.dev üzerinden erişilebilir olduğu sürece WAF, Access ve Bot Management devre dışı bırakılabilir. Çözüm: npx wrangler r2 bucket dev-url disable <BUCKET>
    Sildiğim dosya hâlâ görünüyor.
    R2'nin kendi silme işlemi güçlü tutarlıdır — listeleme dahil. Ama önüne cache koyduğun anda bu gevşer: “An object you delete from R2, but that is still cached, will still be available.” Cache purge gerekir. Ters yönü de var: Cloudflare 404'leri de cache'ler, yani daha önce 404 dönen bir yola dosya yüklersen bir süre 404 görmeye devam edebilirsin.
    HTTP 5XX alıyorum, limitim mi doldu?
    Muhtemelen eşzamanlılık. Resmî ifade: “your bucket has been overwhelmed by too many concurrent requests. These errors can trigger bucket-wide read and write locks.” Cloudflare'in önerdiği çözüm retry + bucket sharding — yani mimariyi buna göre kurmak. Ayrıca aynı anahtara saniyede birden fazla yazma denersen 429 alırsın.
    S3'ten R2'ye nasıl geçerim?
    İki resmî araç var. Super Slurper — tek seferlik toplu taşıma; Amazon S3, Google Cloud Storage ve S3 uyumlu sağlayıcıları destekler. Ücretsizdir, yalnızca R2'ye yaptığı Class A işlemleri faturalanır. Sippy — kademeli, tembel taşıma; nesneler istendikçe R2'ye kopyalanır ve böylece “avoids upfront egress fees.” Kaynak taraftaki egress faturasını dert ediyorsan Sippy'yi seç.
    Ücretsiz katman ne kadar?
    Ayda 10 GB-ay depolama, 1 milyon Class A ve 10 milyon Class B işlem. Önemli uyarı: “The free tier only applies to Standard storage, and does not apply to Infrequent Access storage.” Ayrıca faturalama yukarı yuvarlanır — 1,1 GB-ay kullandıysan 2 GB-ay ödersin.

    İlgili servisler

    • WorkersJavaScript/TypeScript/Python kodunu Cloudflare’in 330+ şehirdeki sunucularında, sunucu yönetmeden çalıştırır.
    • Cache ReserveStatik içeriği R2 üzerinde kalıcı olarak cache’ler; origin’e giden isteği azaltır.
    • Queuesİşleri kuyruğa alıp arka planda batch ve garantili biçimde işler.
    • Data PlatformŞemsiye terim: Pipelines + R2 Data Catalog + R2 SQL. Event verisini toplar, Iceberg’de saklar, SQL ile sorgulatır.
    • ImagesGörselleri saklar, resize eder, WebP/AVIF’e çevirir ve CDN’den sunar.
    • StreamVideoyu yükler, kodlar ve adaptive bitrate ile oynatır; canlı yayın dahil.

    Bu sayfadaki fiyat ve özellik bilgileri 1 Eylül 2026 tarihinde Cloudflare’in resmî kaynaklarından doğrulanmıştır. Cloudflare fiyatlandırmasını önceden haber vermeden değiştirebilir; bağlayıcı bilgi içinresmî sayfaya bakın.

    Hata bildir

    Yanlış bir rakam, eskimiş bir bilgi veya bozuk bir bağlantı mı buldun? Bildir, kaynağıyla birlikte kontrol edelim.