System Design mülakat sorusuZorFintech

Bir ödeme sistemi tasarla

Ödeme sistemi tasarla: müşteriyi güvenilir tahsil et, doğru ledger tut, async yan etkileri (fiş, webhook) çift çekim kaosuna düşmeden yönet.

Mülakat kapsamı

Client → Gateway/LB → App → DB (ledger) + Cache (idempotency) + Message Queue (fiş/webhook). Client → DB yok. Paranın doğruluk kaynağı Cache değil.

Fonksiyonel gereksinimler

  • Ödeme / tahsilat denemesi oluştur.
  • Başarı/başarısızlığı kalıcı kaydet.
  • Async bildirim / settlement işlerini tetikle.

Kalite ve ölçek hedefleri

  • Sıcak yazma yolunda bakiye için ‘akıllı cache’ten’ önce doğruluk.
  • Idempotent API önemli (yüksek seviye).
  • Yan etkiler (e-posta/webhook) kuyrukla async olmalı.

Kapasite varsayımı

Bu ölçeğe göre tasarla

Günde ~10M ödeme varsay (ortalama ~116 RPS); büyük indirimlerde tepe. Dayanıklılık mikro-optimizasyondan önce gelir.

Diyagramdan fazlasını pratik et

Froquiz tuvalinde bileşenleri yerleştir, veri akışını bağla ve senaryoya özel incelemede eksik kararları gör. Ayrıntılı çözüm ve değerlendirme Premium ile açılır.

Premium'u incele