System Design mülakat sorusuOrtaTemel Sistem Bileşeni

Dağıtık bir ID üreteci tasarla

Dağıtık ID üreteci tasarla: birçok servis hızlı ve benzersiz ID ister; tek global kilit darboğazı olmasın.

Mülakat kapsamı

Client → Gateway/LB → App üreticiler + koordinasyon/kalıcılık için Cache ve/veya DB — sadece Client → DB değil.

Fonksiyonel gereksinimler

  • Çağıranlara (app/servis) benzersiz ID ver.
  • Birden fazla üretici node varken doğru çalış.
  • ID’ler kabaca zaman sıralı olabilir (Easy’de tuvalde zorunlu değil).

Kalite ve ölçek hedefleri

  • ID tahsisi için çok yüksek QPS.
  • Dev yazma yükünde tek çözüm ‘bir SQL AUTO_INCREMENT satırı’ olmasın.
  • Node restart sonrası toplu çakışma olmasın.

Kapasite varsayımı

Bu ölçeğe göre tasarla

Tepe ~100k ID isteği/sn, birkaç üretici app node varsay.

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