Redis Nedir? Kurulumu ve Kullanım Alanları
Redis nedir, ne işe yarar? Önbellek, oturum ve kuyruk için Redis, Ubuntu sunucuya kurulum, güvenli ayarlar, bellek sınırı, kalıcılık ve WordPress.

İçindekiler
Redis, verileri bellekte (RAM'de) tutan, son derece hızlı, açık kaynaklı bir anahtar-değer veri deposudur. Veriler diskte değil bellekte durduğu için okuma ve yazma işlemleri mikrosaniyeler sürer. Bu yüzden Redis en çok önbellek, oturum deposu ve iş kuyruğu olarak kullanılır: Sık tekrarlanan veritabanı sorgularının sonuçlarını saklar, kullanıcı oturumlarını tutar ve arka planda çalışacak işleri sıraya koyar.
Bu yazıda Redis'in ne olduğunu, hangi durumlarda işe yaradığını, Ubuntu sunucuya kurulumunu, güvenli ayarları ve WordPress ile kullanımını anlatıyoruz.
Redis nasıl çalışır?
Redis her veriyi bir anahtar ile saklar. Değer basit bir metin olabileceği gibi liste, küme, sıralı küme ya da hash gibi veri yapıları da olabilir:
SET kullanici:42:ad "Ayşe"
GET kullanici:42:ad
EXPIRE kullanici:42:ad 3600
EXPIRE, anahtarın belirli bir süre sonra kendiliğinden silinmesini sağlar; önbellek kullanımının temelidir. Redis tek bir ana iş parçacığında çalışır ve komutları sırayla işler; bu, hem çok hızlı hem de öngörülebilir olmasını sağlar.
Redis ne işe yarar?
- Önbellek: Pahalı veritabanı sorgularının ya da API cevaplarının sonuçlarını belirli bir süre saklar. Sonraki istekler veritabanına gitmeden bellekten cevaplanır.
- Oturumlar: Kullanıcı oturumlarını hızlı ve birden fazla uygulama sunucusunun ortak erişebileceği bir yerde tutar.
- İş kuyrukları: E-posta gönderme ya da görsel işleme gibi işleri arka plana alır. Laravel'in kuyrukları ve Node.js'teki BullMQ gibi kütüphaneler Redis kullanır.
- Hız sınırlama: Bir IP adresinin dakikada kaç istek gönderdiğini saymak için idealdir.
- Sıralamalar ve sayaçlar: Sıralı kümeler, oyun liderlik tablolarını ve canlı sayaçları kolaylaştırır.
- Yayın/abonelik (pub/sub): Uygulamaların ve sunucuların birbirine anlık mesaj göndermesini sağlar.
Redis, MariaDB gibi bir veritabanının yerini almaz; onun önünde durarak yükünü hafifletir. Veritabanı kurulumunu MySQL ve MariaDB kurulumu rehberimizde anlattık.
Ubuntu ve Debian'a Redis kurulumu
Sunucunuza SSH ile bağlandıktan sonra:
sudo apt update
sudo apt install redis-server
sudo systemctl enable --now redis-server
Kurulumu test edin:
redis-cli ping
Cevap PONG ise Redis çalışıyordur. Docker kullanıyorsanız resmî redis imajını da kullanabilirsiniz; portunu yalnızca 127.0.0.1 adresine bağlamayı unutmayın. Nedenini Docker kurulumu rehberimizde anlattık.
Güvenli ayarlar
Redis'in ayarları /etc/redis/redis.conf dosyasındadır. Şu satırları kontrol edin:
bind 127.0.0.1 -::1
protected-mode yes
requirepass guclu-ve-uzun-bir-sifre
maxmemory 256mb
maxmemory-policy allkeys-lru
bind: Redis'in yalnızca sunucunun kendisinden erişilebilir olmasını sağlar. Redis'i asla internete açmayın; açık Redis sunucuları otomatik taramalarla dakikalar içinde bulunup ele geçirilir.protected-mode: Şifresiz bir Redis'in dışarıdan bağlantı kabul etmesini engeller.requirepass: Bağlanan uygulamaların şifre göndermesini zorunlu kılar. Uzun ve rastgele bir şifre seçin.maxmemory: Redis'in kullanabileceği en fazla bellek. Bu sınır olmadan Redis, sunucudaki diğer uygulamaların belleğini tüketebilir.maxmemory-policy: Sınıra ulaşıldığında ne yapılacağı.allkeys-lru, en uzun süredir kullanılmayan anahtarları siler ve önbellek kullanımı için idealdir. Redis'i kuyruk ya da kalıcı veri için kullanıyorsanıznoevictionseçin; böylece veriler sessizce silinmez.
Değişikliklerden sonra servisi yeniden başlatın:
sudo systemctl restart redis-server
redis-cli -a 'guclu-ve-uzun-bir-sifre' ping
Başka bir sunucudaki uygulamanın Redis'e erişmesi gerekiyorsa portu açmak yerine iki sunucuyu WireGuard gibi özel bir ağla bağlayın.
Kalıcılık: RDB ve AOF
Redis verileri bellekte tutar, ama sunucu yeniden başladığında verileri geri yükleyebilmek için diske de yazabilir:
- RDB (anlık görüntü): Belirli aralıklarla bütün verilerin bir kopyası diske yazılır. Hızlıdır ve yedeklemesi kolaydır, ama son görüntüden sonraki değişiklikler kaybolabilir.
- AOF (ekleme günlüğü): Her yazma işlemi bir günlüğe eklenir. Kayıp çok daha azdır, ama dosya daha büyüktür.
Yalnızca önbellek olarak kullanıyorsanız kalıcılığı kapatabilirsiniz; Redis yeniden başladığında önbellek zaten kendiliğinden dolar. Oturumlar ve kuyruklar için AOF'u açmak (appendonly yes) daha güvenlidir.
Uygulamanızdan Redis'e bağlanma
Çoğu dilde hazır Redis kütüphaneleri vardır. Örneğin Node.js'te:
import { createClient } from 'redis';
const redis = createClient({ url: 'redis://:guclu-ve-uzun-bir-sifre@127.0.0.1:6379' });
await redis.connect();
await redis.set('selam', 'dünya', { EX: 60 });
console.log(await redis.get('selam'));
Laravel'de .env dosyasında CACHE_STORE, SESSION_DRIVER ve QUEUE_CONNECTION değerlerini redis yapmanız ve Redis bağlantı bilgilerini girmeniz yeterlidir.
WordPress ile Redis
WordPress, aynı veritabanı sorgularını her sayfa açılışında tekrar tekrar çalıştırır. Nesne önbelleği (object cache), bu sorguların sonuçlarını Redis'te tutar:
- Sunucuya Redis'i ve PHP'nin Redis eklentisini kurun (Ubuntu'da
php-redispaketi). - WordPress'e Redis Object Cache eklentisini kurup etkinleştirin.
- Redis'e şifre koyduysanız
wp-config.phpdosyasınadefine( 'WP_REDIS_PASSWORD', 'guclu-ve-uzun-bir-sifre' );satırını ekleyin. - Eklentinin ayarlarından nesne önbelleğini açın.
Nesne önbelleği, özellikle WooCommerce mağazalarında ve oturum açmış kullanıcıların çok olduğu sitelerde fark yaratır. Diğer hızlandırma yöntemlerini Web sitesi hızlandırma rehberimizde anlattık.
Redis'i izlemek
redis-cli -a 'guclu-ve-uzun-bir-sifre' info memory
redis-cli -a 'guclu-ve-uzun-bir-sifre' info stats
info memory kullanılan belleği, info stats ise önbellek isabetlerini (keyspace_hits) ve kaçırmalarını (keyspace_misses) gösterir. İsabet oranı düşükse önbelleğe alınan veriler çok kısa süre tutuluyor ya da yanlış veriler önbelleğe alınıyor olabilir.
Redis için Nodesty sunucuları
Redis bütün verilerini bellekte tuttuğu için RAM'i bol bir sunucu ister. Nodesty AMD EPYC 7763 VDS paketleri yüksek RAM seçenekleriyle Redis, veritabanı ve uygulamanızı aynı sunucuda rahatça çalıştırmanızı sağlar; AMD Ryzen 9 9950X VDS paketleri ise yüksek tek çekirdek hızıyla Redis'in tek iş parçacıklı yapısından en iyi performansı alır. Her iki pakette de NVMe disk, nShield DDoS koruması ve 7 gün saklanan ücretsiz günlük yedekleme bulunur.
Sıkça Sorulan Sorular
Redis veritabanının yerini alır mı?
Genellikle hayır. Redis, verileri bellekte tutan hızlı bir anahtar-değer deposudur ve çoğu projede MariaDB ya da PostgreSQL gibi bir veritabanının yanında, sık okunan verileri önbelleğe almak için kullanılır. Kalıcı ve ilişkisel veriler için asıl veritabanı gerekir.
Sunucu yeniden başlarsa Redis'teki veriler kaybolur mu?
Kalıcılık ayarlarına bağlıdır. Varsayılan RDB anlık görüntüleri belirli aralıklarla diske yazılır; son görüntüden sonraki değişiklikler kaybolabilir. AOF açıkken her yazma işlemi günlüğe eklendiği için kayıp çok daha azdır. Yalnızca önbellek olarak kullanıyorsanız kalıcılığı kapatmak da bir seçenektir.
Redis için ne kadar RAM gerekir?
Redis bütün verilerini bellekte tutar; ihtiyaç, sakladığınız veriye bağlıdır. Bir web sitesinin nesne önbelleği için genellikle 128–512 MB yeterlidir. maxmemory ayarıyla Redis'in kullanabileceği en fazla belleği sınırlandırın; aksi hâlde sunucudaki diğer uygulamalara yer kalmayabilir.
Redis portunu internete açmalı mıyım?
Hayır. İnternete açık Redis sunucuları otomatik taramalarla hızla bulunur ve ele geçirilir. Redis yalnızca 127.0.0.1 adresini dinlemeli ve şifreyle korunmalıdır. Başka bir sunucudan erişmeniz gerekiyorsa SSH tüneli ya da WireGuard gibi özel bir ağ kullanın.
Redis ile Valkey arasındaki fark nedir?
Valkey, Redis'in lisans değişikliğinden sonra Linux Foundation çatısı altında başlatılan açık kaynaklı bir çatallanmasıdır. Redis'in komutları ve protokolüyle uyumludur; Redis bekleyen uygulamaların büyük kısmı Valkey ile değişiklik yapmadan çalışır.
WordPress'te Redis kullanmak siteyi hızlandırır mı?
Kalabalık, oturum açmış kullanıcıların çok olduğu ve veritabanını yoğun kullanan sitelerde belirgin şekilde hızlandırır; tekrarlanan veritabanı sorgularının sonuçları bellekten gelir. Az ziyaret alan ve sayfa önbelleği kullanan basit sitelerde fark küçüktür.
Yazar hakkında
Nodesty Ekibi · Altyapı ve Destek
Nodesty ekibi sunucularımızı, ağımızı ve DDoS korumamızı her gün işletir ve müşteri destek taleplerini 7/24 yanıtlar. Bu rehberler o deneyimden yazılır.
İlgili yazılar

Load Balancer (Yük Dengeleyici) Nedir? Nasıl Çalışır?
Load balancer nedir, ne işe yarar? Yük dengeleme yöntemleri, sağlık kontrolleri, oturum yönetimi, Nginx ile yük dengeleme, HAProxy ve ne zaman gerekir.

Ubuntu Sürüm Yükseltme: Sunucuyu Yeni LTS Sürümüne Taşıma
Ubuntu sunucu yeni LTS sürümüne nasıl yükseltilir? Yedek, hazırlık, do-release-upgrade adımları, SSH bağlantısı, sonrası kontroller ve temiz kurulum.

Laravel Uygulamasını VDS'te Yayınlama Rehberi
Laravel uygulaması sunucuda nasıl yayınlanır? PHP-FPM, Composer, .env, veritabanı, dosya izinleri, Nginx, kuyruk işçisi, zamanlayıcı, SSL ve güncelleme.