Cloudflare Genel

Cloudflare Workers ile Sunucu Taraflı İşlemler Yapma

Cloudflare Workers ile Sunucu Taraflı İşlemler Yapma

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.