İçeriğe atla
HexaTransfer
Bloga dön
Teknik incelemeler

CDN Optimization için Faster Dosya Transferis

Leverage CDN networks to accelerate dosya transfers globally. Edge caching, geographic routing, ve performance tuning strategies.

CDN, alıcının yakınındaki bir PoP'tan bayt sunarak dosya transferlerini hızlandırır. New York bucket'ından Singapur'daki bir istemciye 5 GB'lık bir indirme için S3'e doğrudan bağlanmak (yaklaşık 180 ms RTT, 30-80 Mbps sürekli) ile Singapur'daki bir Cloudflare kenarına bağlanmak (5 ms RTT, 400+ Mbps) arasındaki fark, indirme süresini 10 dakikadan 2 dakikanın altına düşürür. Zorlu kısım, transferlerin gerçekten kenar PoP'larına ulaşacağı — kaçırmayıp kaynağınıza hücum etmeyeceği — biçimde önbellekleme, yönlendirme ve kaynak kalkanı stratejisini tasarlamaktır. Büyük dosyalar için CDN optimizasyonunun nasıl işlediği aşağıda açıklanmıştır.

Hangi CDN Sağlayıcıları Transfer İş Yükleri için Uygundur

Cloudflare, 120'den fazla ülkede 330'dan fazla PoP ile çalışır; cömert ücretsiz bant genişliği ve Backblaze B2, Wasabi ve diğerlerinden çıkışı sıfırlayan Bandwidth Alliance ortaklıkları sunar. CloudFront (AWS), 600'den fazla PoP ile Origin Access Identity üzerinden S3 ile sıkı entegrasyona sahiptir. Fastly, akış ve habercilik alanında popüler olan daha az ama daha yüksek performanslı PoP'lar çalıştırır. Bunny.net, agresif fiyatlandırmayla medya ve dosya teslimi üzerine odaklanır (Kuzey Amerika ve Avrupa'da 0,005 $/GB). Akamai, SureRoute gibi özelliklerle kurumsal alanda hakim olmayı sürdürüyor. Dosya transfer hizmetleri için Cloudflare ve CloudFront kullanım durumlarının %90'ını karşılar.

Önbellek Anahtarları ve Gerçekte Önbelleğe Alınanlar

CDN, yanıtları tam URL ile (ve çoğunlukla Vary başlıkları ile) anahtarlı olarak önbelleğe alır. Dosya indirmeleri için, imzalı URL'ye GET istekleri, önbellek anahtarı sorgu dizisi imzalarını yoksayıyorsa veya yol tabanlı imzalar kullanıyorsanız önbelleğe alınabilir. Cloudflare'in Önbellek Kuralları ve CloudFront'un önbellek anahtarı politikaları, anahtarın hangi sorgu parametrelerini içerdiğini belirlemenizi sağlar. Ön imzalı S3 URL'leri için nesneyi anahtarıyla veya zamana bağlı olmayan bir tanımlayıcıyla önbelleğe alın; böylece aynı dosya birçok alıcı için kenarda sunulur. POST veya PATCH yüklemelerini önbelleğe almayın, yalnızca GET indirmelerini alın.

Kısa Ömürlü Transferler için Önbellek Süreleri

Transfer dosyaları sıklıkla 7 gün sonra sona erer. CDN TTL'yi buna göre ayarlayın: kenarda 24 saat için Cache-Control max-age=86400, kayıpta kaynak ile yeniden doğrulama ve bir transfer erken sona erdiğinde API aracılığıyla temizleme. Cloudflare'in "Her Şeyi Önbelleğe Al" Sayfa Kuralı, "Kenar Önbelleği TTL: 1 ay" ve "Tarayıcı Önbelleği TTL: 30 dakika" ile kenar kalıcılığını tarayıcı önbelleğinden ayırır. Alıcılar büyük dosyaları birden fazla cihaza akıtıyorsa, kenar önbellekleme ciddi bant genişliği tasarrufu sağlar: ilk indirme kaynaktan çeker, sonraki on indirme 1 ms gecikmede kenarda çeker.

Kaynak Kalkanları ve Katmanlı Önbellekleme

Birçok PoP aynı anda ıskaladığında, kaynağa hücum ederler. Kaynak kalkanları (Cloudflare Argo Tiered Cache, CloudFront Origin Shield), ara bir önbellek katmanı belirler: kenar PoP'lar bölgesel katmana ıskaladığında, bölgesel katman en fazla bir kez kaynağa ıskaladığında. 10.000 indiricisi olan viral bir transfer bağlantısı için kaynak, 300 (her kenar PoP başına biri) yerine bir istek görür. Bu, kaynak çıkış maliyetlerini %95 veya daha fazla düşürebilir. Geniş dağıtımlı her transfer için kalkanları etkinleştirin; önbelleğin muhtemelen sıfır isabet alacağı özel birebir transferler için atlayın.

Devam Ettirilebilir İndirmeler için Aralık İstekleri

HTTP Aralık istekleri (RFC 7233), istemcilerin tüm dosya yerine bir bayt aralığı indirmesine olanak tanır; ağ kesintisinin ardından devam ettirilebilir indirmeler için gereklidir. Tarayıcılar ve indirme yöneticileri belirli bir parça almak için Range: bytes=100000000-199999999 gönderir. CDN'ler, önbelleğe alınan içerikte Aralık'ı kabul etmeli ve ıskalandığında kaynaktan aralık almalıdır. Tüm büyük CDN'ler bunu destekler, ancak bir curl testiyle doğrulayın: curl -H "Range: bytes=0-1023" https://cdn.example.com/file.bin ilk 1 KB ile 206 Kısmi İçerik döndürmelidir. Aralık desteği olmadan, hücresel bir indirme kopması 5 GB'lık bir dosyada sıfırdan yeniden başlamayı zorlar; bu son derece can sıkıcıdır.

TLS Sonlandırma ve Sertifika Yönetimi

CDN, TLS'yi kenarda sonlandırır ve kaynakla ayrı bir TLS bağlantısı açar. Bu, istemcilerin kaynağınızın desteklediğinden bağımsız olarak TLS 1.3 ve modern şifre paketleriyle etki alanınız için bir sertifikaya (genellikle Cloudflare'in ücretsiz sağladığı SNI paylaşımlı sertifika) ulaştığı anlamına gelir. Let's Encrypt veya ZeroSSL aracılığıyla ACME otomasyonu sertifika yenilemeyi halleder. Yüksek işlem hacmine sahip dosya transfer hizmetleri için CDN'inizin modern tıkanıklık kontrolü (BBR, CUBIC) kullandığından, HTTP/2 ve HTTP/3'ü etkinleştirdiğinden ve tekrar eden istemciler için 0-RTT'yi desteklediğinden emin olun. Bu ayarlar tek bir büyük indirmeden çok birçok küçük dosya için daha fazla önem taşır, ancak kullanıcılar genelinde birikimlenir.

Coğrafi Yönlendirme ve Anycast

CDN'ler, istemcileri anycast BGP kullanarak en yakın PoP'a yönlendirir: her PoP'tan duyurulan tek bir IP adresi; BGP ise topolojik olarak en yakın olanı seçer. Çalıştığında sihirli, çalışmadığında ise can sıkıcıdır; Brezilya'daki bir istemciyi ABD PoP'una veya Türkiye'deki bir istemciyi Frankfurt'a yanlış yönlendirilebilir. curl --resolve ve PoP'a özgü başlıklarla yönlendirmeyi izleyin (Cloudflare'nin cf-ray, CloudFront'un x-amz-cf-pop). Yönlendirme bir bölgede tutarsız biçimde yanlış davranıyorsa, yeniden dengeleme için CDN desteğiyle iletişime geçin. Kritik dağıtımlar için Route 53 veya NS1 üzerinden GeoDNS, belirli bölgeleri belirli kenar uç noktalarına yönlendirebilir.

Bant Genişliği Maliyetleri ve Çıkış Tuzağı

CDN çıkış maliyetleri büyük ölçüde değişir. CloudFront, ilk 10 TB için Kuzey Amerika'da yaklaşık 0,085 $/GB, hacimle düşerek talep eder. Cloudflare, gigabayt yerine plan katmanına göre faturalandırır; bu da ölçekte öngörülebilir kılar. Bunny.net, bölgeye göre 0,005 ila 0,06 $/GB fiyatlandırır. Backblaze B2 artı Cloudflare, B2'den Cloudflare'e 0 $ çıkış, ardından son kullanıcıya Cloudflare oranı. Aylık 100 TB'lık bir transfer hizmeti için CloudFront ile Cloudflare Pro arasındaki fark, karışıma bağlı olarak 8.500 $ ile 200 $ artı fazla kullanım olabilir. Seçim yapmadan önce bant genişliğinizi modelleyin.

Süresi Dolan Transferler için Temizleme Stratejileri

Bir transfer süresi dolduğunda veya gönderici erişimi iptal ettiğinde, bayat indirmeleri önlemek için CDN önbelleğini hemen temizleyin. Cloudflare'in Temizleme API'si tek URL temizlemesini (ücretsiz, anında) ve etiket tabanlı temizlemeyi (yalnızca Enterprise) destekler. CloudFront'un CreateInvalidation, aylık 1.000 ücretsizin ardından yol başına 0,005 $ ile faturalandırılır. Yüksek son kullanma dönüşümlü hizmetler için, transfer kimliğine göre etiket tabanlı temizleme, URL başına geçersizleştirmelerden daha ucuzdur. Alternatif olarak, URL'ye kısa ömürlü imzalı bir belirteç ekleyin; böylece süresi dolan belirteçler kaynakta doğrulamayı başarısız kılarak CDN üzerinden 403 döndürür; bu bir geçersizleştirme çağrısı olmadan "temizleme" işlevi görür.

Ölçüm ve Gerçek Kullanıcı Metrikleri

CDN performans iddiaları, gerçek kullanıcı izleme ile doğrulanmalıdır. Catchpoint, ThousandEyes ve Cloudflare Radar gibi araçlar küresel testleri sentezler. Kendi kullanıcılarınız için JavaScript PerformanceObserver ve Navigation Timing API, her istemciden TTFB, indirme süresi ve işlem hızı yakalar. Temel metrikler: p50/p95/p99 indirme süresi, önbellek isabet oranı (popüler transferlerde %85'in üzerini hedefleyin), kaynak çıkışı (önbellek isabeti arttıkça düşmeli) ve yavaş isteklerin coğrafi dağılımı. Tek bir yetersiz bölge genellikle destek aracılığıyla düzeltilebilecek bir yönlendirme veya PoP sorununa işaret eder.

Transfer Hizmeti için Her Şeyi Bir Araya Getirme

HexaTransfer, S3 uyumlu depolama arkasında CDN ile istemci tarafı AES-256-GCM şifrelemesi kullanır; böylece indirmeler küresel olarak kenar PoP'larından hızla sunulurken anahtarlar istemci tarafında kalır. Ucuz bir kaynak (Backblaze B2 veya Cloudflare R2), geniş PoP kapsamına sahip bir CDN, aralık isteği desteği ve agresif önbelleğin birleşimi, dünyanın her yerindeki alıcılar için hem maliyeti hem de gecikmeyi azaltır.

hexatransfer.com'da deneyin — ücretsiz, hesap gerekmez, maksimum 10 GB.

Uçtan uca şifreleme ile büyük dosyaları güvenle gönderin

Uçtan uca şifreleme ile 10 GB'a kadar dosya ücretsiz aktarın. Hesap gerekmez. Dosyalarınız yüklenmeden önce tarayıcınızda şifrelenir — başka kimse okuyamaz.

Dosya gönder