# Redis (Remote Dictionary Server)

Adres: https://softwaredictionary.org/tr/terimler/redis
Kategori: Veritabanları
Son güncelleme: 2026-10-03
Okunuşu: redis

Kısaca: Redis, okuma ve yazmayı milisaniyenin çok altında yapan bellek içi bir anahtar-değer deposudur; önbellek, oturum deposu ve mesaj aracısı olarak yaygındır.

## Redis nedir?

Remote Dictionary Server'ın kısaltması olan Redis, 2009'da Salvatore Sanfilippo tarafından geliştirildi. Veriyi dev bir sözlük gibi anahtar ve değer çiftleri olarak saklar; ama değerler zengin veri yapıları olabilir: metinler (string), listeler, kümeler, sıralı kümeler, hash'ler, akışlar (stream) ve dahası. Her şey diskte değil bellekte durduğu için işlemlerin çoğu mikrosaniyeler içinde biter.

Uygulamalar Redis ile `SET`, `GET`, `INCR` ya da `EXPIRE` gibi basit komutlarla konuşur. Bir anahtara yaşam süresi (TTL) verilebilir; süre dolunca Redis onu kendiliğinden siler, bu da bir önbelleğin ya da giriş oturumunun tam olarak ihtiyaç duyduğu şeydir. Redis ayrıca anlık görüntüleri ya da yalnızca ekleme yapılan bir günlüğü diske yazabilir; böylece veri yeniden başlatmadan sonra da kalır. Yüksek erişilebilirlik için başka sunuculara da kopyalanabilir.

Tipik kullanımları; veritabanı sonuçlarını önbelleğe almak, kullanıcı oturumlarını saklamak, sayfa görüntülenmeleri ya da hız sınırı denemeleri gibi şeyleri saymak, sıralı kümelerle sıralama tabloları (leaderboard) kurmak ve servisler arasında hafif kuyruklar ya da pub/sub mesajlaşmasıdır. Birçok sistemde PostgreSQL gibi bir ana veritabanının yanında durur ve tekrar tekrar okunan sıcak veriyi tutar.

Sık yapılan bir yanlış, Redis'in yalnızca bir önbellek olduğu düşüncesidir. Tam bir veri deposudur; ama verisinin diskten daha pahalı olan belleğe sığması gerekir, bu yüzden bir uygulamanın tek veritabanı olması nadirdir. 2024'ten bu yana lisansı birden fazla kez değişti; Linux Foundation da aynı komutlarla çalışan Valkey adında açık kaynaklı bir çatallama (fork) sürdürüyor.

## Önemli noktalar

- Redis bellek içi bir anahtar-değer deposudur; okuma ve yazma son derece hızlıdır.
- Değerler metin, liste, küme, sıralı küme, hash ve akış olabilir.
- Anahtarlar kendiliğinden sona erebilir; bu da önbelleklere ve oturumlara uyar.
- Veri diske kaydedilebilir ve başka sunuculara kopyalanabilir.
- Genellikle bir ana veritabanının yerine değil, yanında çalışır.

## Örnek: Bir değeri bir dakikalığına önbelleğe almak (Node.js)

```javascript
import { createClient } from "redis";

const redis = createClient();
await redis.connect();

// Store a value that Redis deletes after 60 seconds
await redis.set("user:42:name", "Ada", { EX: 60 });

const name = await redis.get("user:42:name"); // "Ada"
await redis.incr("page:home:views"); // atomic counter
```

## Sık sorulan sorular

**Redis bir veritabanı mı, önbellek mi?**

İkisi de. Redis veriyi kalıcı olarak da tutabilen bir veri deposudur; ama verisi bellekte durduğu için çoğunlukla bir ana veritabanının yanında önbellek olarak ya da kısa ömürlü veriler için kullanılır.

**Sunucu yeniden başlayınca Redis'teki veriye ne olur?**

Kalıcılık kapalıysa kaybolur. Anlık görüntüler (RDB) ya da yalnızca ekleme yapılan dosya (AOF) açıksa Redis yeniden başlarken veriyi diskten geri yükler.

**Valkey nedir?**

Valkey, Redis lisansını değiştirdikten sonra 2024'te başlatılan ve Linux Foundation çatısı altında sürdürülen, Redis'in açık kaynaklı bir çatallamasıdır. Aynı komutlarla ve istemci kütüphaneleriyle çalışır.

## Kaynaklar

- [Redis documentation](https://redis.io/docs/latest/)

---

Software Dictionary: https://softwaredictionary.org/tr · https://softwaredictionary.org/tr/llms.txt
