Cloudflare Genel

Cloudflare Workers İle Sunucu Taraflı Performans Artışı

Cloudflare Workers İle Sunucu Taraflı Performans Artışı

Cloudflare Workers ile Sunucu Taraflı Performans Artışı

Modern web uygulamalarının yüksek performanslı ve ölçeklenebilir olması, kullanıcı deneyimini doğrudan etkileyen kritik bir faktördür. Cloudflare Workers, uygulamalarınızı Cloudflare’ın küresel ağı üzerinde çalıştırmanızı sağlayarak sunucu taraflı performansı önemli ölçüde artırır. Bu makalede, Cloudflare Workers kullanarak nasıl sunucu performansınızı geliştirebileceğinizi adım adım ele alacağız.

Cloudflare Workers Nedir?

Cloudflare Workers, JavaScript ve WebAssembly tabanlı kodlarınızı doğrudan Cloudflare’ın edge (uç) ağında çalıştırmanıza olanak tanıyan bir sunucusuz (serverless) uygulama platformudur. Bu sayede, kullanıcı istekleri sunucunuza ulaşmadan önce edge noktalarda işlenebilir, gecikme süreleri azaltılabilir ve sunucu yükü hafifletilebilir.

Neden Cloudflare Workers Kullanmalısınız?

Düşük Gecikme Süreleri: Edge ağı sayesinde kullanıcı istekleri en yakın veri merkezinde işlenir.
Ölçeklenebilirlik: Altyapınızı büyütmek zorunda kalmadan yüksek trafik taleplerini karşılayabilirsiniz.
Maliyet Etkinliği: Sunucu kaynaklarınızdan tasarruf edersiniz, çünkü birçok işlem edge’de gerçekleşir.
Güvenlik: Kötü amaçlı istekler daha sunucunuza ulaşmadan engellenebilir.

Adım Adım Cloudflare Workers Kurulumu ve Kullanımı

1. Cloudflare Hesabı Oluşturma

Öncelikle, Cloudflare üzerinde bir hesap oluşturmanız ve sitenizi eklemeniz gerekmektedir.

1. Kayıt Olun: Cloudflare sitesine giderek ücretsiz bir hesap oluşturun.

  1. Site Ekleyin: Hesabınıza giriş yaparak site ekleme sürecini başlatın.
3. DNS Ayarları: Cloudflare size özel DNS ad sunucuları verecektir. Alan adınızın DNS ayarlarını bu sunuculara yönlendirin.

2. Workers İzinlerini Etkinleştirin

Cloudflare panelinde Workers özelliğini etkinleştirmek için:

1. Workers Sekmesi: Dashboard üzerinde “Workers” sekmesine gidin.

  1. Etkinleştir: Workers’ı etkinleştirin ve gerekli izinleri verin.

3. Bir Worker Oluşturma

Şimdi, ilk Worker’ınızı oluşturabilirsiniz.

1. Yeni Worker: “Create a Worker” seçeneğine tıklayın.

  1. Kodu Yazın: Açılan editörde, edge’de çalıştırmak istediğiniz kodu yazın.

Örnek bir “Hello World” kodu:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  return new Response('Hello World!', {
    headers: { 'content-type': 'text/plain' },
  })
}

4. Worker’ı Test Etme

Kodunuzu yazdıktan sonra, sağ tarafta bulunan önizleme ekranında Worker’ınızın çıktısını görebilirsiniz.

Test İstekleri: Farklı isteklere nasıl yanıt verdiğini görmek için test istekleri yapabilirsiniz.
Hata Ayıklama: Console.log ve diğer debug araçlarını kullanarak kodunuzu hata ayıklayabilirsiniz.

5. Worker’ı Yayına Alma

Worker’ınızı yayınlamak için:

1. Route Belirleme: Worker’ınızın hangi alan adı veya alt yolu üzerinde çalışacağını belirtin.

  1. Kaydet ve Dağıt: “Save and Deploy” butonuna basarak Worker’ınızı aktif hale getirin.

6. Sunucu Entegrasyonu

Cloudflare Workers, mevcut sunucu altyapınızla sorunsuz bir şekilde entegre olur.

API İstekleri: Sunucunuza gelen API isteklerini edge’de önbelleğe alabilir veya yönlendirebilirsiniz.
Statik İçerik: Statik dosyaları edge’de servis ederek sunucu yükünü azaltabilirsiniz.
Güvenlik Duvarı: Kötü amaçlı trafik edge’de engellenebilir, böylece sunucunuz korunur.

Performans Optimizasyonu için İpuçları

Verileri Edge’de Önbelleğe Alma

Edge’de verileri önbelleğe alarak sunucunuza gelen istek sayısını azaltabilirsiniz.

const CACHE_TTL = 300; // 5 dakika

async function handleRequest(request) {
  let cache = caches.default;
  let response = await cache.match(request);

  if (!response) {
    response = await fetch(request);
    response = new Response(response.body, response);
    response.headers.append("Cache-Control", s-maxage=${CACHE_TTL});
    event.waitUntil(cache.put(request, response.clone()));
  }
  return response;
}

İstek Yönlendirme ve Yük Dengesi

Birden fazla sunucunuz varsa, istekleri dağıtmak için Workers kullanabilirsiniz.

Round Robin: İstekleri sırayla farklı sunuculara yönlendirebilirsiniz.
Coğrafi Yönlendirme: Kullanıcıya en yakın sunucuya yönlendirme yapabilirsiniz.

Güvenlik Kontrolleri

Kullanıcı isteklerini edge’de kontrol ederek güvenliği artırabilirsiniz.

JWT Doğrulama: JSON Web Token’ları edge’de doğrulayabilirsiniz.
IP Engelleme: Belirli IP adreslerinden gelen istekleri engelleyebilirsiniz.

Cloudflare Workers ve Sunucu Hizmetleri

Cloudflare Workers, mevcut cloud sunucu veya sanal sunucu altyapınızla entegre edilerek performansı en üst düzeye çıkarır. Hizhosting’in sunduğu güçlü sunucu seçenekleriyle birleştiğinde, uygulamalarınız hem hızlı hem de güvenilir bir şekilde kullanıcılara ulaşır.

Sonuç

Cloudflare Workers, sunucu taraflı performans artırımı için güçlü bir araçtır. Edge’de kod çalıştırma yeteneği sayesinde gecikmeleri azaltabilir, sunucu yükünü hafifletebilir ve kullanıcı deneyimini geliştirebilirsiniz. Mevcut sunucu altyapınızla entegre ederek, yüksek trafik taleplerini kolayca karşılayabilir ve uygulamalarınızın ölçeklenebilirliğini artırabilirsiniz.

Eğer henüz bir sunucu hizmetiniz yoksa veya mevcut sunucunuzu güçlendirmek istiyorsanız, cloud sunucu seçeneklerimizi inceleyebilirsiniz.