Redis
Redis, bellek içi (in-memory) çalışan yüksek performanslı key-value veritabanıdır. Cache, session store, real-time queue, pub/sub ve leaderboard için kullanılır. Disk persistence opsiyonel, mikrosaniye seviyesinde yanıt süresi sunar.
Redis Nedir?
Redis (REmote DIctionary Server), 2009'da Salvatore Sanfilippo tarafından geliştirilen, bellek içi (in-memory) çalışan açık kaynak key-value veritabanıdır. Veri RAM'de tutulduğu için mikrosaniye seviyesinde yanıt süresi sağlar. Sadece basit key-value değil, list, set, hash, sorted set, stream, hyperloglog gibi zengin veri yapıları sunar.
Redis Kullanım Alanları
- Cache: Veritabanı sorgularının sonucunu cache'leme
- Session Store: Dağıtık uygulamalarda merkezi session
- Queue: Görev kuyruğu (Celery, Bull, RQ)
- Pub/Sub: Gerçek zamanlı mesajlaşma
- Leaderboard: Sorted set ile skor tablosu
- Rate Limiting: API istek sınırı
- Counter: Atomik artım/azaltım
- Geospatial: Yakındaki nokta arama
Veri Yapıları
- String: Basit key-value
- List: Çift yönlü kuyruk
- Hash: Field-value çiftleri (objeler için)
- Set: Sırasız unique eleman kümesi
- Sorted Set: Skorlu sıralı küme
- Stream: Append-only log
- HyperLogLog: Unique sayım tahmini
- Bitmap: Bit seviyesinde işlem
Persistence
- RDB (Snapshot): Belirli aralıklarla disk snapshot
- AOF (Append Only File): Her işlem logging
- RDB+AOF: İkisi birlikte (önerilir)
- Disable: Sadece cache kullanımı için
Redis vs Memcached
- Veri yapıları: Redis zengin, Memcached sadece string
- Persistence: Redis opsiyonel, Memcached yok
- Replication: Redis var, Memcached yok
- Cluster: Redis var, Memcached client-side
- Hız: Benzer (ikisi de çok hızlı)
- Bellek verimliliği: Memcached daha az overhead
Redis Cluster ve Sentinel
- Sentinel: Master-slave topoloji + otomatik failover
- Cluster: Sharding + replication, 16384 hash slot
Güvenlik
- Varsayılan port 6379'u firewall ile kapat
- requirepass ile şifre (ACL Redis 6+)
- Renamed/disabled commands (FLUSHDB, CONFIG)
- TLS encryption (Redis 6+)
- Yalnızca trusted networks'ten bind
WordPress + Redis Object Cache
WordPress'te Redis Object Cache eklentisi kullanılır — veritabanı sorguları Redis'te cache'lenir, TTFB dramatik düşer. MeoHost hosting paketlerinde Redis yerleşiktir.
MeoHost ve Redis
MeoHost WordPress Hosting, Premium Hosting ve VDS paketlerinde Redis yerleşik olarak sunulur. Object cache, session store ve queue ihtiyaçları için cPanel üzerinden kolay yönetim.