first commit

This commit is contained in:
2026-02-28 02:44:41 +03:00
commit 97fb289fe7
70 changed files with 11928 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
# ADR-002: Hybrid Cache Stratejisi
## Durum
Kabul edildi
## Bağlam
Netflix'ten scraped verileri nasıl saklayacağımıza karar vermemiz gerekiyor. Seçenekler:
1. **Sadece Cache**: Redis'te TTL ile sakla
2. **Sadece Database**: PostgreSQL'de kalıcı sakla
3. **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ı
1. **Hız**: Cache hit durumunda anlık yanıt
2. **Kalıcılık**: Veriler DB'de saklanır
3. **Verimlilik**: Netflix'e gereksiz istek atılmaz
4. **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
```env
REDIS_TTL_SECONDS=604800 # 7 gün
```
## Tarih
2025-02-27