System Design mülakat sorusuZorMesajlaşma & Realtime
WhatsApp benzeri bir sohbet / mesajlaşma sistemi tasarla
WhatsApp tarzı mesajlaşma tasarla: neredeyse gerçek zamanlı gönder/al; kullanıcı dönünce geçmiş de olsun.
Mülakat kapsamı
Client → Realtime Gateway (+ REST için Gateway/LB). App → DB + Cache + Message Queue (offline/push). Client → DB yok.
Fonksiyonel gereksinimler
- Başka kullanıcıya veya gruba mesaj gönder.
- Alıcı online’ysa hızlı ulaştır.
- Sonra okumak için sohbet geçmişini sakla.
Kalite ve ölçek hedefleri
- Online kullanıcı için düşük gecikme.
- Offline yakalama için kalıcı geçmiş.
- Fan-out / push tek HTTP isteğinde sonsuza bloklanmamalı.
Kapasite varsayımı
Bu ölçeğe göre tasarla
~50M DAU, günde ~40 mesaj → ~2B mesaj/gün (ortalama ~23b mesaj/sn).
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 →