← Blog'a Dön
DEVOPS

Serverless Nedir? Sunucusuz Mimari Başlangıç Rehberi

F. Çağrı Bilgehan18 Ocak 202610 dk okuma
serverlesscloudlambdacloud functions

Serverless Nedir? Sunucusuz Mimari Başlangıç Rehberi

Serverless, "sunucu yok" demek değildir — sunucu sizin sorununuz olmaktan çıkar. Kod yazarsınız, cloud provider çalıştırır. Sunucu yönetimi, kapasite planlaması ve ölçekleme tamamen provider'ın sorumluluğundadır.

Serverless Tanımı

Serverless computing, geliştiricilerin sunucu yönetimiyle uğraşmadan kod yazıp çalıştırabildiği bir bulut hesaplama modelidir.

İki Ana Kategori

1. Function as a Service (FaaS)

Olay tetiklemeli (event-driven) fonksiyonlar:

// AWS Lambda örneği
exports.handler = async (event) => {
  const { userId, action } = JSON.parse(event.body);

  if (action === 'sendWelcomeEmail') {
    await sendEmail(userId);
    return { statusCode: 200, body: 'Email sent' };
  }

  return { statusCode: 400, body: 'Unknown action' };
};
// Google Cloud Function örneği
exports.processOrder = async (req, res) => {
  const order = req.body;
  await saveToDatabase(order);
  await notifyWarehouse(order);
  res.status(200).json({ success: true, orderId: order.id });
};

2. Backend as a Service (BaaS)

Hazır backend servisleri: Authentication, veritabanı, storage, push notification.

Örnekler: Supabase, Firebase, AWS Amplify

Serverless Çalışma Modeli

Geleneksel: Sunucu 7/24 çalışır (boşta bile kaynak tüketir)
    ████████████████████████████████████████

Serverless: Sadece istek geldiğinde çalışır
    ███    ██   ████     ██  ███    █████
    istek  istek istek   istek istek  istek

Avantajlar

1. Sıfır Sunucu Yönetimi

OS güncellemesi, güvenlik yaması, kapasite planlama yok.

2. Kullandıkça Öde

Sadece fonksiyonun çalıştığı süre için ödeme yaparsınız. Trafik yoksa maliyet sıfır.

3. Otomatik Ölçekleme

0'dan binlerce eşzamanlı isteğe anında ölçeklenir. Manuel müdahale gerekmez.

4. Hızlı Geliştirme

Altyapı yerine iş mantığına odaklanırsınız.

Dezavantajlar

1. Cold Start

İlk istek yavaş olabilir (100ms-3s). Fonksiyon uzun süredir çağrılmadıysa container'ın başlatılması gerekir.

2. Vendor Lock-in

AWS Lambda'dan Google Cloud Functions'a geçiş kolay değildir.

3. Execution Limitleri

  • Maksimum çalışma süresi (Lambda: 15 dk)
  • Payload boyutu limitleri
  • Eşzamanlılık limitleri

4. Debugging Zorluğu

Yerel ortamda test etmek ve hata ayıklamak zordur.

5. Maliyet Öngörüsüzlüğü

Trafik patlaması beklenmedik maliyetler yaratabilir.

Serverless Provider'lar

| Provider | FaaS | BaaS | |----------|------|------| | AWS | Lambda | Amplify, DynamoDB | | Google Cloud | Cloud Functions | Firebase, Cloud Run | | Azure | Azure Functions | Static Web Apps | | Cloudflare | Workers | R2, D1, KV | | Vercel | Edge Functions | — |

Ne Zaman Serverless Kullanmalı?

✅ Evet

  • Event-driven iş yükleri (dosya upload, webhook)
  • Düzensiz trafik (bazen yoğun, bazen boş)
  • Hızlı prototipleme ve MVP
  • API backend'leri
  • Zamanlı görevler (cron jobs)

❌ Hayır

  • Sürekli çalışan iş yükleri
  • WebSocket bağlantıları (uzun süreli)
  • Düşük gecikme gerektiren (< 10ms)
  • Karmaşık state yönetimi
  • GPU/ML inference

BilgeOne Serverless Mimarisi

BilgeOne platformunda serverless kullanımımız:

  • Google Cloud Run — Container tabanlı serverless (Next.js)
  • Supabase Edge Functions — Webhook işleme
  • Supabase Auth — BaaS (kimlik doğrulama)
  • Supabase Storage — BaaS (dosya depolama)

Cloud Run'ın avantajı: Container çalıştırdığı için vendor lock-in minimumdur.

Sonuç

Serverless, doğru kullanıldığında geliştirme hızını ve maliyet verimliliğini dramatik olarak artırır. Ancak her iş yükü serverless'a uygun değildir. Projenizin gereksinimlerini değerlendirin ve hybrid yaklaşımı da göz önünde bulundurun.

Serverless ve cloud mimarisi LabLudus DevOps kariyer yolunda pratik olarak öğretiyor.

İlgili Yazılar

Infrastructure as Code (IaC) Nedir? Terraform ve Altyapı Otomasyonu

Infrastructure as Code nedir? Terraform, Pulumi, CloudFormation ile altyapı otomasyonu, versiyon kontrolü ve tekrarlanabilir deployment rehberi.

What Is Infrastructure as Code? Terraform & Automation Guide

IaC explained: Terraform, Pulumi, CloudFormation for infrastructure automation, version control, and repeatable deployments.