Cloudflare Workers ile Sunucu Taraflı İşlemler Yapma
Günümüzde web uygulamaları, hızlı ve ölçeklenebilir olmak zorundadır. Cloudflare Workers, geliştiricilere sunucu taraflı kod çalıştırma imkanı sunarak, uygulamalarını daha hızlı ve verimli hale getirme fırsatı verir. Bu makalede, Cloudflare Workers kullanarak sunucu taraflı işlemlerin nasıl gerçekleştirileceğini adım adım inceleyeceğiz.
Cloudflare Workers Nedir?
Cloudflare Workers, Cloudflare’ın edge ağı üzerinde JavaScript kodu çalıştırmanıza olanak tanıyan bir sunless (sunucusuz) platformdur. Bu sayede, kullanıcılara en yakın noktada kod çalıştırarak gecikmeleri azaltabilir ve performansı artırabilirsiniz.
Neden Cloudflare Workers Kullanalım?
– Performans: İstekler, kullanıcılara en yakın noktada işlenir.
– Ölçeklenebilirlik: Altyapı yönetimi olmadan global ölçekte çalışır.
– Maliyet Etkinliği: Kullanılan kaynak kadar ödeme yapılır.
Başlamadan Önce
Cloudflare Workers kullanmak için bir Cloudflare hesabına ihtiyacınız var. Ayrıca, Cloud Sunucu veya Sanal Sunucu çözümlerinden birine sahip olmanız, verilerinizi ve uygulamalarınızı yönetmek için faydalı olacaktır.
Adım Adım Cloudflare Workers ile Sunucu Taraflı İşlemler
1. Cloudflare Workers Ortamını Kurma
Öncelikle, Wrangler
adı verilen CLI aracını kurmamız gerekiyor:
npm install -g wrangler
Wrangler ile Cloudflare Workers projeleri oluşturabilir, yapılandırabilir ve yönetebilirsiniz.
2. Yeni Bir Proje Oluşturma
Projeyi oluşturmak için aşağıdaki komutu kullanın:
wrangler init my-worker
Bu komut, my-worker
adında yeni bir klasör oluşturur ve gerekli dosyaları içine yerleştirir.
3. Wrangler’ı Yapılandırma
Cloudflare hesabınızı Wrangler ile bağlamak için API Token oluşturmanız gerekiyor. Cloudflare hesabınıza giriş yapın ve bir API Token oluşturun, ardından şu komutu çalıştırın:
wrangler login
Veya manuel olarak token eklemek için:
wrangler config
4. Kodunuzu Yazma
my-worker/index.js
dosyasını açın ve ihtiyacınıza göre sunucu taraflı kodunuzu yazın. Örnek olarak, bir HTTP isteğini yakalayan ve işlem yapan basit bir kod:
addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)) }) async function handleRequest(request) { // İstekten veri alın const { pathname } = new URL(request.url) if (pathname.startsWith('/api')) { // Sunucu taraflı işlem yap const data = await performServerSideOperation() return new Response(JSON.stringify(data), { status: 200 }) } // Varsayılan yanıt return new Response('Hello from Cloudflare Workers!', { status: 200 }) } async function performServerSideOperation() { // Örnek sunucu taraflı işlem return { message: 'Sunucu taraflı işlem tamamlandı.' } }
5. Workers KV veya Durable Objects Kullanımı
Eğer verileri saklamak veya paylaşmak istiyorsanız, Workers KV veya Durable Objects kullanabilirsiniz. Örneğin, Workers KV kullanarak veri saklama:
KV Namespace Oluşturma
Önce bir KV Namespace oluşturun:
wrangler kv:namespace create "MY_KV"
Bu işlemden sonra wrangler.toml
dosyasını güncelleyin:
kv_namespaces = [ { binding = "MY_KV", id = "your-namespace-id" } ]
Kodu Güncelleme
KV’yi kullanmak için kodunuza ekleyin:
async function handleRequest(request) {
// KV'den veri oku
const value = await MY_KV.get('key')
// KV'ye veri yaz
await MY_KV.put('key', 'value')
return new Response(KV Value: ${value}
, { status: 200 })
}
6. Projeyi Yayına Alma
Kodunuzu yazdıktan ve test ettikten sonra, projeyi Cloudflare ağına yayına alabilirsiniz:
wrangler publish
Bu komut, Worker’ınızı derler ve Cloudflare ağı üzerinde aktif hale getirir.
7. Özel Alan Adı Yapılandırma
Worker’ınızı kendi alan adınızla kullanmak istiyorsanız, Cloudflare DNS ayarlarınızı yapılandırın. Örneğin, Bulut Sunucu hizmetinizi kullanarak DNS kayıtlarınızı yönetebilirsiniz.
8. Gelişmiş Özellikler ve Optimizasyon
– Webpack ile Paketleme: Büyük projelerde kodunuzu modüler hale getirebilirsiniz.
– TypeScript Desteği: Daha güvenli kod yazmak için TypeScript kullanabilirsiniz.
– Logger Entegrasyonu: Hata ayıklama ve loglama için çözümler ekleyebilirsiniz.
Sonuç
Cloudflare Workers, sunucu taraflı işlemleri hızlı ve ölçeklenebilir bir şekilde gerçekleştirmenizi sağlar. Bu rehberde adım adım nasıl başlayacağınızı ve temel işlemleri nasıl yapacağınızı öğrendiniz. Daha karmaşık uygulamalar için Cloudflare’ın sunduğu ek hizmetleri ve özellikleri keşfedebilirsiniz.
Not: Altyapınızı güçlendirmek ve yönetmek için Fiziksel Sunucu seçeneklerini de değerlendirebilirsiniz.