System Design mülakat sorusuOrtaTemel Sistem Bileşeni
Bir Rate Limiter tasarla
API önünde rate limiter tasarla: her istemci zaman penceresinde en fazla N istek (ör. 100/dk); aşanlar 429 alır veya yavaşlatılır.
Mülakat kapsamı
Limit’in istek yolunda nerede çalıştığını, sayaçların nerede durduğunu ve istemcinin sayaç deposuna dokunmadığını göster.
Fonksiyonel gereksinimler
- Çağıranı tanı (API key, user id veya IP).
- Limit altındaysa izin ver; aşıyorsa reddet/yavaşlat (ör. HTTP 429).
- Pencere tipi (fixed vs sliding) bu Easy’de yüksek seviyede kalabilir.
Kalite ve ölçek hedefleri
- Her istekte hızlı allow/deny kararı (sıcak yol).
- Limitler birçok app instance’da tutarlı olmalı (paylaşılan sayaç).
- Sıcak yol her istekte yavaş DB’ye gitmemeli.
Kapasite varsayımı
Bu ölçeğe göre tasarla
Tepe ~20.000 RPS, ~10 app server. Örnek limit: API key başına 100 istek/dakika.
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 →