Cloudflare'dan Bunny.net'e Geçiş
(jola.dev)- Merkezi Cloudflare bağımlılığını azaltmak için kişisel blogunu bunny.net'e taşıyan bir örnek
- bunny.net, Slovenya merkezli bir Avrupa CDN hizmeti olarak dünya genelinde hızlı performans ve verimli bir PoP ağı sunuyor
- Alan adı kaydı için Porkbun kullanılıyor ve Cloudflare'ın “Orange Cloud” özelliği bunny.net ortamına taşınıyor
- Pull Zone, önbellekleme politikası, SSL sertifikası, Edge Rule gibi adım adım ayarlarla CDN tamamen yapılandırılıyor
- DDoS koruması, Origin Shield, Stale Cache gibi temel özelliklerle bile kararlı çalışıyor ve bireysel kullanıcılar için Cloudflare'a gerçek bir alternatif olabiliyor
Cloudflare'dan bunny.net'e geçiş
- Cloudflare bağımlılığını ve merkezileşme sorununu azaltmak için kişisel blogunu bunny.net'e taşıma süreci ve yapılandırma yöntemi anlatılıyor
- Cloudflare ücretsiz olarak güçlü özellikler sunsa da, tek bir şirkete olan bağımlılığı büyütüyor ve arıza durumunda internetin genelini etkileyebilen bir yapı oluşturuyor
- ABD merkezli şirketler etrafında yoğunlaşan internet yapısına duyulan rahatsızlık ve çeşitli tartışmalar nedeniyle alternatif aranıyor
Bunny.net'e genel bakış
- bunny.net, Slovenya merkezli bir Avrupa şirketi olarak Cloudflare ile rekabet edebilecek bir CDN hizmeti sunuyor
- Dünya genelinde yüksek performans ve hız gösteriyor; PoP ağının ölçeği daha küçük olsa da verimli çalışıyor
- Avrupa teknoloji ekosisteminin büyümesini desteklemesi açısından olumlu değerlendiriliyor
Cloudflare'dan ayrılmak
- Blog alan adı kayıt kuruluşu olarak Cloudflare kullanılmış olsa da, Avrupa içindeki bir alternatif bulmak zordu
- INWX ücretsiz WHOIS gizliliği sunmadığı için eleniyor, bunun yerine Porkbun seçiliyor
- Porkbun Cloudflare altyapısını kullansa da destek kalitesi yüksek
- Cloudflare'ın “Orange Cloud” özelliği (otomatik önbellekleme, origin gizleme, koruma özellikleri) bunny.net'e taşınıyor
Bunny.net kurulum adımları
-
Hesap oluşturma
- Kayıtta 14 gün boyunca 20 dolar kredi veriliyor, kredi kartı eklenirse ek 30 dolar daha sağlanıyor
- E-posta doğrulamasından sonra ayarlar yapılabiliyor ve kullanıma dayalı fiyatlandırma (aylık minimum 1 dolar) uygulanıyor
- “Kullanıcının ürün değil müşteri olduğu” bir yapıya geçiliyor
-
Pull Zone oluşturma
- CDN'i etkinleştiren temel bileşen olarak Origin URL belirtilip sunucu bağlanıyor
- Birden fazla uygulama çalıştırılıyorsa Host başlığında alan adı belirtilmeli
- Standard tier seçildikten sonra bölgelere göre farklı fiyatlandırılan Zone'lar ayarlanabiliyor
- Devre dışı bırakılan bölgelerdeki kullanıcılar en yakın etkin Zone'a yönlendiriliyor
-
Pull Zone bağlantısı
- “Add a custom hostname” alanına web sitesi alan adı giriliyor
- Yönergeye göre CDN yolunu bağlamak için CNAME kaydı ekleniyor (
website.b-cdn.netbiçiminde) - DNS yayılımından sonra “Verify & Activate SSL” tıklanarak SSL doğrulaması tamamlanıyor
- Başarılı olursa web sitesi bunny.net CDN üzerinden sunuluyor
Önbellek ayarları
- Web sitesi uygun Cache-Control header döndürüyorsa bunny.net buna uyuyor
- “Caching → General” altında “Respect origin Cache-Control” ayarı kontrol ediliyor
no-cacheayarlıysa önbelleğe alınmıyor
- Önbellek header'ı yoksa Smart Cache özelliğiyle görseller, CSS, JS gibi dosyalar otomatik önbelleğe alınıyor
- Elixir Phoenix tabanlı blogda
publicpipeline'ına özel bir cache header middleware ekleniyorcache-control: public, s-maxage=86400, max-age=0ayarıyla HTML sayfaları da önbelleğe alınıyor- Yeni yazı yayımlandığında güncel HTML'in yansıması için Pull Zone önbelleği elle temizlenmeli
- Larm aracıyla yapılan ölçümlerde dünya genelindeki çeşitli konumlarda yanıt süresinin iyileştiği görülüyor
Önerilen temel ayarlar
- Tüm istekleri HTTPS'e zorlamak için “Force SSL” etkinleştiriliyor
- DDoS koruması varsayılan olarak geliyor; ayrıca Origin Shield etkinleştirilirse sunucu yükü azalıyor
- Origin'e yakın bir konum seçilerek önbellek merkezileştiriliyor ve edge sunucular önce Origin Shield'a bakıyor
- “Stale Cache: While Origin Offline / While Updating” seçenekleriyle
- Origin arızasında bile önbelleğe alınmış içerik sunulmaya devam ediyor
- Güncelleme sırasında da eski önbellek geçici olarak servis ediliyor
- Otomatik oluşturulan pull zone alan adını gerçek alan adına yönlendirmek için Edge Rule ekleniyor
- Kural adı: “Default domain redirect”
- İşlem: Redirect, durum kodu 301
- Koşul:
*://<slug>.b-cdn.net/*isteği geldiğindehttps://jola.dev{{path}}adresine yönlendir
Sonuç ve değerlendirme
- Bu yapılandırma yalnızca bunny.net'in temel özelliklerini ele alıyor; Edge Rules, gelişmiş önbellek yapılandırması, güvenlik Shield, video streaming, Edge Scripting, Edge Containers gibi konular henüz kapsanmıyor
- Kontrol panelindeki istatistikler, loglar ve metrikler çok ayrıntılı; istek bazında önbellek durumu ve sorunlar takip edilebiliyor
- Gelecekte tüm servisler bunny.net'e taşınıyor ve S3 uyumlu depolama ürününün çıkması bekleniyor
- Bireysel kullanıcılar için de Cloudflare alternatifi olarak yeterince rekabetçi bir seçenek
1 yorum
Hacker News yorumları
Olumlu bir blog yazısıysa, şeffaf açıklama adına sayfadaki tüm bağlantıların Bunny Affiliate Program bağlantıları olduğunu belirtmek iyi olurdu
bunny.net'i CDN ve DNS için kullanıyorum
Ücretsiz hizmetlerin bir gün ücretliye dönebileceği kaygısı yüzünden, en baştan az da olsa ödeme yapmanın daha iyi olduğunu düşünüyorum. 2 dolardan 3 dolara çıkması sorun değil ama ücretsizden 20 dolara geçmesi riskli
Ayrıca geliştiricileri önemseyen küçük ve bağımsız şirketleri tercih ediyorum. Bu yüzden bunny.net, transistor.fm ve Plausible Analytics kullanıyorum
Cloudflare Workers + Pages ile bir SaaS işletiyorum. Sunucusuz fonksiyonlar ve statik siteyi aynı depodan dağıtabilmek geliştirici deneyimi açısından çok iyi
Ama son zamanlarda CDN edge cache'in dağıtımdan sonra bile eski HTML sunması sorununu yaşadım. Hata ayıklaması zor ve hangi cache katmanının sorun çıkardığını tahmin etmek gerekiyor
Yine de ücretsiz katmanda başlamak için en iyilerden biri. Workers, Pages, KV ve R2 ile neredeyse ücretsiz denebilecek bir prodüksiyon uygulaması çalıştırılabiliyor
Cloudflare artık sadece bir CDN değil, bir edge platformu. Eğer Bunny'ye kolayca geçebiliyorsan, Cloudflare'ın asıl yeteneklerini kullanmıyordun demektir
WinterTC gibi standartları düzgün desteklememesi üzücü. BunnySDK'deki gibi özel bir serve fonksiyonu kullanmak ise daha da ağır bir özel bağımlılık
Bunny'yi çeşitli amaçlarla kullanıyoruz ve çok memnunuz. Özellikle destek kalitesi çok iyi. Cloudflare iyi ama ücretli enterprise destek almıyorsan sınırları var. UpCloud'un da desteği harika
“Cloudflare internetin tek hata noktasıdır” sözü sık duyuluyor ama gerçekte durum daha karmaşık
Küçük hizmetler daha çeşitli şekilde kullanılırsa arızaların dağılımı değişebilir. Bunun karşılığında daha sık ama daha küçük çaplı kesintiler de yaşanabilir
Ayrıca Cloudflare altyapısı tamamen merkezi değil. Bazı hizmetler bölgelere göre bağımsız
Bir yıl önce Bunny'ye geçtim ve çok memnunum. AB tabanlı CDN sunabilmesi de güzel, ayrıca Magic Containers sayesinde dünya çapında ölçeklenebilen bir API'yi aylık yaklaşık 1 dolara çalıştırabiliyorum
Bu yazı reklam gibi görünebilir ama aslında sadece deneyim paylaşımıydı. Affiliate bağlantıları belirtilmişti, gizleme niyeti yoktu
Dikkat edilmesi gereken bir nokta da eğitim kurumları gibi yerlerde
*.b-cdn.netalan adının sıkça engellenmesiÜzücü tarafı ücretsiz hosting olmaması. Trafik az olsa bile ayda 1 euro (KDV hariç) ödemen gerekiyor
Ayrıca CNAME flattening destekleyen DNS sağlayıcısı çok değil. Cache invalidation'ı da düzgün yansıması için iki kez yapmak gerekiyor