1.3 KiB
1.3 KiB
ADR-002: Hybrid Cache Stratejisi
Durum
Kabul edildi
Bağlam
Netflix'ten scraped verileri nasıl saklayacağımıza karar vermemiz gerekiyor. Seçenekler:
- Sadece Cache: Redis'te TTL ile sakla
- Sadece Database: PostgreSQL'de kalıcı sakla
- Hybrid: Cache + Database birlikte
Karar
Hybrid Cache Stratejisi (Cache → DB → Netflix) seçildi.
Akış
İstek → Redis Cache → Varsa dön
→ Yoksa → PostgreSQL → Varsa dön, Cache'e yaz
→ Yoksa → Netflix'ten çek → DB'ye yaz → Cache'e yaz → Dön
Gerekçe
Sadece Cache Eksikleri
- TTL dolduğunda veri kaybı
- Yeniden scraping maliyeti
Sadece Database Eksikleri
- Her istekte DB sorgusu
- Daha yavaş yanıt
Hybrid Avantajları
- Hız: Cache hit durumunda anlık yanıt
- Kalıcılık: Veriler DB'de saklanır
- Verimlilik: Netflix'e gereksiz istek atılmaz
- TTL Esnekliği: Cache süresi ayarlanabilir
Sonuçlar
Olumlu
- En hızlı yanıt süresi (cache hit)
- Veri kalıcılığı
- Netflix üzerinde minimal yük
Olumsuz
- İki sistem senkronizasyonu
- Daha fazla kod karmaşıklığı
Yapılandırma
REDIS_TTL_SECONDS=604800 # 7 gün
Tarih
2025-02-27