Serverless Fonksiyon Nedir?

İngilizce: Serverless Function

Serverless fonksiyon, HTTP isteği, kuyruk, cron veya dosya yükleme gibi bir olay tetiklendiğinde kısa süreli çalışan bulut kodu birimidir.

Serverless Fonksiyon Nedir?

Serverless fonksiyon, belirli bir olay gerçekleştiğinde çalışan küçük ve bağımsız kod parçasıdır. Bir HTTP isteği geldiğinde JSON yanıtı döndürebilir, ödeme sağlayıcısından gelen webhook’u işleyebilir, kuyruktaki mesajı tüketebilir veya her gece rapor dosyası üretebilir.

Fonksiyon çalışmadığı sürede genellikle kaynak ayırmaz. Sağlayıcı uygun runtime’ı başlatır, kodu yürütür, sonucu döndürür ve kapasiteyi otomatik yönetir. Bu nedenle fonksiyonların kısa, idempotent ve dış bağımlılık hatalarına dayanıklı tasarlanması gerekir.

Tasarımda Dikkat Edilecekler

  • Stateless yapı: Kalıcı durum veritabanı, KV, obje depolama veya kuyrukta tutulmalıdır.
  • Zaman sınırı: Fonksiyon sağlayıcıya göre belirli sürede tamamlanmak zorundadır.
  • Cold start: Kullanılmayan fonksiyonun ilk çağrısı daha yavaş olabilir.
  • Retry davranışı: Aynı olay tekrar işlenirse çift kayıt oluşmamalıdır.
  • Gizli bilgiler: API anahtarları ortam değişkeni veya secret mekanizmasıyla yönetilir.

İş Dünyasında Kullanımı

Serverless fonksiyonlar küçük entegrasyon görevlerinde güçlüdür: form gönderimini CRM’e yazmak, e-Fatura durumunu düzenli kontrol etmek, görsel küçültmek veya ödeme bildirimiyle sipariş durumunu güncellemek gibi.

Lambda, Cloudflare Workers ve edge computing tabanlı fonksiyonlar benzer fikri farklı çalışma ortamlarında uygular. Kritik akışlarda timeout, loglama, alarm, retry ve ölü harf kuyruğu gibi operasyonel ayrıntılar fonksiyon kodu kadar önemlidir.