System Design mülakat sorusuZorE-Ticaret / Realtime
eBay benzeri çevrimiçi müzayede sistemi tasarla
eBay tarzı müzayede tasarla: kullanıcılar neredeyse gerçek zamanlı teklif verir, güncel fiyat canlı güncellenir, kazanan kalıcı kaydedilir.
Mülakat kapsamı
Client → Realtime Gateway (+ REST için Gateway/LB). App → Cache (yüksek teklif) + DB (müzayede/teklif) + Message Queue (outbid/kazanç). Client → DB yok.
Fonksiyonel gereksinimler
- Aktif müzayedeye teklif ver.
- Güncel en yüksek teklifi izleyenlere yayınla.
- Müzayedeyi kapat, kazananı kalıcı kaydet.
Kalite ve ölçek hedefleri
- Teklif güncellemeleri düşük gecikmeli push ister (Realtime Gateway).
- Güncel en yüksek teklif sıcak — Cache yardım eder.
- Final sonuç DB’de kalıcı olmalı; outbid e-postası için Message Queue.
Kapasite varsayımı
Bu ölçeğe göre tasarla
Sıcak bir müzayedede ~5 dakikada ~100k teklif varsay (~333 teklif/sn) + çok daha fazla websocket izleyici.
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 →