Cloudflare Workers ile Sunucusuz Uygulama Geliştirme
Günümüzün dinamik web uygulamaları, yüksek performans ve ölçeklenebilirlik gerektirir. Cloudflare Workers, geliştiricilere sunucusuz ortamda JavaScript kodu çalıştırma imkanı sağlayarak bu ihtiyaçları karşılar. Bu makalede, Cloudflare Workers ile nasıl sunucusuz uygulama geliştirebileceğinizi adım adım inceleyeceğiz.
Cloudflare Workers Nedir?
Cloudflare Workers, Cloudflare’ın global ağını kullanarak sunucusuz olarak kod çalıştırmanızı sağlayan bir platformdur. Bu sayede uygulamalarınızı dünya genelindeki veri merkezlerinde çalıştırabilir, gecikmeleri minimize edebilirsiniz.
Neden Cloudflare Workers?
– Performans: Kodunuz, kullanıcılara en yakın noktada çalışır.
– Ölçeklenebilirlik: Trafik yoğunluğuna göre otomatik ölçeklenir.
– Maliyet Verimliliği: Sunucu yönetim maliyetlerini ortadan kaldırır.
– Güvenlik: Cloudflare’ın yerleşik güvenlik özelliklerinden faydalanır.
Başlangıç: Çalışma Ortamının Hazırlanması
1. Wrangler Kurulumu
Wrangler, Cloudflare Workers için komut satırı aracıdır.
Node.js ve npm yüklü olduğundan emin olun:
node -v npm -v
Ardından Wrangler’ı global olarak kurun:
npm install -g @cloudflare/wrangler
2. Cloudflare Hesabı Oluşturma
Eğer henüz bir Cloudflare hesabınız yoksa, Cloudflare üzerinden ücretsiz bir hesap oluşturun.
3. API Token Alımı
Wrangler’ı yetkilendirmek için API Token almanız gerekir:
– Cloudflare Dashboard’a girin.
– API Tokens bölümüne gidin.
– Create Token seçeneğiyle yeni bir token oluşturun.
4. Wrangler’ı Yapılandırma
Terminalde aşağıdaki komutu çalıştırın ve istenen bilgileri girin:
wrangler login
İlk Worker Uygulamanızı Oluşturma
1. Proje Oluşturma
Boş bir proje oluşturun:
wrangler init my-first-worker
2. Kodun Düzenlenmesi
my-first-worker/index.js
dosyasını açın ve aşağıdaki basit örneği ekleyin:
addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)) }) async function handleRequest(request) { return new Response('Merhaba, dünya!', { headers: { 'content-type': 'text/plain' }, }) }
3. Konfigürasyon Dosyası
wrangler.toml
dosyasını açın ve gerekli ayarları yapın:
name = "my-first-worker" type = "javascript" account_id = "HESAP_ID'NİZİ_BURAYA_EKLEYİN" workers_dev = true
account_id
bilginizi Cloudflare Dashboard’ınızdan alabilirsiniz.
4. Uygulamayı Test Etme
Yerel olarak test etmek için:
wrangler dev
Tarayıcınızda http://localhost:8787
adresine giderek uygulamayı görüntüleyebilirsiniz.
Uygulamayı Yayına Alma
1. Yayınlama
Uygulamanızı Cloudflare’ın ağına dağıtmak için:
wrangler publish
Bu işlem sonrası Worker uygulamanız my-first-worker.your-subdomain.workers.dev
adresinde yayına alınacaktır.
2. Özel Alan Adı ile Kullanma
Kendi alan adınızı kullanmak için:
– Alan adınızı Cloud Sunucu hizmeti ile yönetin.
– Cloudflare DNS ayarlarında yeni bir CNAME kaydı oluşturun.
– Worker’ınızı bu alan adına bağlayın.
İleri Seviye Özellikler
KV Store Entegrasyonu
Cloudflare Workers, KV Store ile verileri global olarak saklamanızı sağlar.
1. KV Namespace Oluşturma
Terminalde:
wrangler kv:namespace create "MY_KV"
wrangler.toml
dosyasına ekleyin:
kv_namespaces = [ { binding = "MY_KV", id = "KV_NAMESPACE_ID" } ]
2. KV Kullanımı
Veri yazmak:
await MY_KV.put('anahtar', 'değer')
Veri okumak:
const value = await MY_KV.get('anahtar')
HTTP İstekleri Yapma
Harici API’lere istek göndermek için fetch
kullanabilirsiniz:
async function handleRequest(request) { const response = await fetch('https://api.example.com/data') const data = await response.json() return new Response(JSON.stringify(data), { headers: { 'content-type': 'application/json' }, }) }
Sonuç
Cloudflare Workers ile sunucusuz uygulama geliştirmek, geleneksel sunucu yapılandırmalarına göre daha hızlı ve ölçeklenebilir çözümler sunar. Global ağ altyapısı sayesinde kullanıcılarınıza en iyi deneyimi yaşatabilirsiniz. Sanal Sunucu ihtiyaçlarınız için Hiz Hosting hizmetlerini inceleyebilirsiniz.