Türkçe production reference
Redis Geliştirici El Kitabı
Redis 8 ve .NET 10 ile caching, veri yapıları, messaging, ölçekleme, dayanıklılık ve production operasyonları.
REHBER HAKKINDA
Kapsam ve production odağı
KAPSAMNeyi çözüyor?Redis veri yapıları, cache-aside ve invalidation, Pub/Sub, Streams, Lua, distributed lock, Sentinel, Cluster, persistence, güvenlik, monitoring ve testing kararlarını birlikte ele alır.
OKUYUCUKimler için?Redis öğrenen backend ve .NET geliştiricileri, cache ve dağıtık koordinasyon altyapısı geliştiren ekipler ile Redis sistemlerini işleten platform ekipleri içindir.
PRODUCTIONTemel ilkelerConnectionMultiplexer örneğini yeniden kullanın, TTL ve invalidation politikasını veri sahipliğiyle tasarlayın, persistence hedeflerini belirleyin ve latency, eviction, replication ile memory metriklerini izleyin.
TEMEL
Temel Seviye
TEMELGirişBu doküman Redis özelliklerinin .NET Core projelerinde nasıl implemente edileceğini anlatır. Her bölüm önce Redis kavramını kısaca açıklar, ardından sekmeli yapıda Redis CLI ve .TEMELKurulum & BağlantıRedis 8 ve .NET 10 ile caching, veri yapıları, messaging, ölçekleme, dayanıklılık ve production operasyonları.TEMELRedis Databases (db0–db15)Redis varsayılan olarak 16 ayrı database sunar (db0–db15). Her biri izole key namespace'idir. Cluster mode'da sadece db0 kullanılır.TEMELString İşlemleriTemel key-value. Counter, cache, session, flag depolama.TEMELHash İşlemleriObje depolama. Tek field güncellenebilir, bellek verimli (<128 field → ziplist).TEMELList & Set & Sorted SetRedis 8 ve .NET 10 ile caching, veri yapıları, messaging, ölçekleme, dayanıklılık ve production operasyonları.
ORTA
Orta Seviye
ORTACaching PatternsEn yaygın pattern. İlk istek DB'den okur ve cache'e yazar. Sonrakiler cache'den döner.ORTAPub/SubFire-and-forget mesajlaşma. Subscriber yoksa mesaj kaybolur.ORTARedis StreamsPersistent, consumer group destekli event stream. Kafka-light.ORTATransactions & Lua ScriptingHer EVAL çağrısında Redis script'i SHA1'e compile eder. Production'da SCRIPT LOAD + EVALSHA ile compile maliyetini sıfırla.ORTAGeospatial (GEO)Konum bazlı veri depolama ve yarıçap sorguları. Restoran/mağaza arama, yakındaki kullanıcılar.ORTAHyperLogLogProbabilistic veri yapısı. Unique eleman sayımı — 12KB sabit bellek ile milyarlarca unique değer sayabilir. Hata oranı: ~0.81%.ORTAKey Expiration & Eviction StratejileriKey expire olunca tetiklenen event — cleanup logic, audit trail, veya cascade invalidation için kullanılır.
İLERİ
İleri Seviye
İLERİDistributed LockMicroservice'ler arası koordinasyon. Redlock algoritması.İLERİRate Limiting.NET 7+ AddRateLimiter() middleware'i ile built-in rate limiting. Redis backing store ile multi-instance'da paylaşımlı limit.İLERİClient-Side Caching (Tracking)Redis 6+ RESP3 ile server-assisted client caching: Redis, client'ın cache'lediği key'ler değiştiğinde invalidation bildirimi gönderir. Network roundtrip'i tamamen ortadan kaldırır.İLERİPipeline & BatchBirden fazla komutu tek roundtrip'te gönder. Latency dramatik düşer.İLERİConnection Pooling & PerformansStackExchange.Redis varsayılan olarak tek TCP bağlantı üzerinden multiplexing yapar. Çoğu senaryo için yeterli. Ama çok yoğun senaryolarda (>50K ops/s) tek connection bottleneck olabilir.İLERİSentinel vs Cluster: Farkı Anla, Doğru SeçRedis 8 ve .NET 10 ile caching, veri yapıları, messaging, ölçekleme, dayanıklılık ve production operasyonları.İLERİReplication & SentinelMaster-Replica (async replication) + Sentinel (otomatik failover).İLERİCluster Mode16384 hash slot → node'lara dağıtılır. Horizontal scaling. Her node bir kısım slot'tan sorumlu.İLERİTesting & BenchmarkingGerçek API endpoint'ini Redis ile birlikte test et — en güvenilir integration test pattern'ı.
UZMAN
Uzman Seviye
UZMANHealth Check & ResilienceRedis bağlantı durumu izleme, otomatik kurtarma ve graceful degradation.UZMANRedis Exception HandlingStackExchange.Redis farklı hata türleri fırlatır. Doğru yakalama ve yönetim kritik.UZMANSecurity - Authentication, ACL & TLSRedis 8 ve .NET 10 ile caching, veri yapıları, messaging, ölçekleme, dayanıklılık ve production operasyonları.UZMANSession ManagementMulti-instance uygulama session'larının Redis ile merkezi yönetimi.UZMANAnti-Patterns & TroubleshootingRedis 8 ve .NET 10 ile caching, veri yapıları, messaging, ölçekleme, dayanıklılık ve production operasyonları.UZMANASP.NET Output Cache & Response CacheHTTP response'ları Redis'te cache'leyerek backend yükünü dramatik azaltma.UZMANSignalR Redis BackplaneMulti-instance SignalR uygulamalarını Redis Pub/Sub ile scale-out.UZMANPersistence — RDB & AOF DetayBackup'ın gerçekten restore edilebilir olduğunu otomatik doğrula — aylık manuel test yerine scheduled job.UZMANMonitoring & ObservabilityProduction Redis'te neyi izlemeli, nasıl alarm kurmalı.UZMANQuick Reference CardHangi senaryo → hangi Redis yapısı → hangi .NET metodu? Tek bakışta karar ver.