System Design mülakat sorusuZorProximity / Trie

Uber veya Lyft benzeri bir yolculuk paylaşım servisi tasarla

Uber/Lyft tarzı yolculuk paylaşımı tasarla: yolcu talep eder, yakındaki sürücü eşleşir, konumlar neredeyse gerçek zamanlı güncellenir.

Mülakat kapsamı

Client → Gateway/LB → App; sıcak konum/müsaitlik için Cache; yolculuk/kullanıcı için DB; canlı güncelleme için Realtime Gateway; dispatch/bildirim için Message Queue. Client → DB yok.

Fonksiyonel gereksinimler

  • Yolcu alış/bırakış ile yolculuk ister.
  • Sistem müsait yakındaki sürücüyü eşleştirir.
  • Yolculuk durumunu takip et; yolculukta konum güncelle.

Kalite ve ölçek hedefleri

  • Eşleştirme ve konum güncellemesi düşük gecikmeli olmalı.
  • Konum yazımları çok sık — cache/geo index dostu depolama.
  • Bildirim/fiş gibi işlerde async kullan; eşleşmeyi bloklama.

Kapasite varsayımı

Bu ölçeğe göre tasarla

Şehir genelinde günde ~1M yolculuk; tepede ~100 yolculuk/sn başlangıç + aktif yolculuklardan yoğun konum ping’i.

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