sunucuhataları
teknik çözüm merkezi
Ara Giriş Yap Üye Ol
🏠 Ana Sayfa 📚 Kurulum Rehberleri
Kategoriler
🌐 Web Sunucuları 🐧 İşletim Sistemleri 📦 Sanallaştırma & VPS 🖥️ Kontrol Panelleri 🔒 SSL & Güvenlik 📝 CMS & Uygulamalar 🗄️ Veritabanı 📧 Mail Sunucusu 🗨️ Forum ℹ️ Hakkımızda 📧 İletişim
Giriş Yap Üye Ol
Ana Sayfa Veritabanı Redis Kurulumu Redis Kurulumu ve Yapılandırması: Ubuntu ve Alm...
🔴 Redis Kurulumu

Redis Kurulumu ve Yapılandırması: Ubuntu ve AlmaLinux Rehberi

Redis in-memory cache sunucu kurulum rehberi: Ubuntu ve AlmaLinux kurulumu, redis.conf yapılandırması, PHP ve WordPress entegrasyonu.

📅 24 Şubat 2025 👁 42 görüntülenme ⏱ 5 dk okuma
𝕏 Paylaş
📋 İçindekiler göster/gizle

Redis Nedir?

Redis (Remote Dictionary Server), Salvatore Sanfilippo tarafından 2009'da geliştirilen açık kaynaklı, in-memory veri yapısı deposudur. String, hash, list, set, sorted set, bitmap ve hyperloglog gibi zengin veri yapılarını destekleyen Redis; önbellekleme (caching), oturum yönetimi (session store), pub/sub mesajlaşma, gerçek zamanlı sıralamalar ve kuyruk (queue) yönetimi gibi çeşitli kullanım alanlarına sahiptir.

Redis'in en kritik özelliği, tüm verileri RAM'de tutmasıdır; bu sayede geleneksel disk tabanlı veritabanlarına kıyasla on ila yüz kat daha hızlı okuma/yazma operasyonları gerçekleştirir. Saniyede yüz binlerce işlemi tek çekirdekte gerçekleştirebilen Redis, düşük gecikme süresi gerektiren uygulamaların vazgeçilmez bileşenlerinden biri haline gelmiştir.

Twitter, GitHub, Stackoverflow, Pinterest ve Airbnb gibi büyük platformlar Redis'i yoğun biçimde kullanmaktadır. Laravel, Symfony, Django ve Rails gibi web frameworkleri Redis'i önbellek ve kuyruk backend'i olarak birinci sınıf destek ile entegre eder. WordPress için W3 Total Cache ve Redis Object Cache eklentileri, veritabanı sorgularını önbelleğe alarak sayfa yükleme süresini dramatik biçimde kısaltır.

Temel Özellikler

  • Yüksek Performans: Tüm veriler RAM'de; saniyede 100.000+ işlem kapasitesi.
  • Zengin Veri Yapıları: String, Hash, List, Set, Sorted Set, Stream, Bitmap.
  • Kalıcılık (Persistence): RDB (anlık görüntü) ve AOF (append-only file) ile veri kalıcılığı.
  • Pub/Sub: Gerçek zamanlı mesajlaşma ve event sistemi.
  • Lua Betikleme: Atomik işlemler için sunucu taraflı betikler.
  • Replikasyon: Master-slave replikasyon ile yüksek kullanılabilirlik.
  • Redis Cluster: Yatay ölçekleme için sharding desteği.
  • TTL Desteği: Her anahtara yaşam süresi (expire) belirlenebilir.

Sistem Gereksinimleri

  • CPU: 1 vCPU
  • RAM: 512 MB (önbellek boyutuna göre daha fazla)
  • Disk: 5 GB (RDB/AOF dosyaları için)

İşletim Sistemine Göre Kurulum

🟠 Ubuntu 22.04 Üzerinde Redis Kurulumu

1. Sistemi Güncelleyin

sudo apt update && sudo apt upgrade -y

2. Redis'i Kurun

sudo apt install redis-server -y

3. Servisi Başlatın ve Aktifleştirin

sudo systemctl start redis-server
sudo systemctl enable redis-server
sudo systemctl status redis-server

4. Kurulumu Doğrulayın

redis-cli ping
# Yanıt: PONG

🔵 AlmaLinux 9 Üzerinde Redis Kurulumu

1. EPEL Deposunu Ekleyin ve Sistemi Güncelleyin

sudo dnf install epel-release -y
sudo dnf update -y

2. Redis'i Kurun

sudo dnf install redis -y

3. Servisi Başlatın ve Aktifleştirin

sudo systemctl start redis
sudo systemctl enable redis
sudo systemctl status redis

4. Firewall Ayarı (Yalnızca Uzak Erişim Gerekirse)

sudo firewall-cmd --permanent --add-port=6379/tcp
sudo firewall-cmd --reload

redis.conf Yapılandırması

# Ubuntu
sudo nano /etc/redis/redis.conf

# AlmaLinux
sudo nano /etc/redis/redis.conf
# veya: /etc/redis.conf

Temel Güvenlik Ayarları

# Yalnızca localhost'tan erişime izin ver (varsayılan, önerilir)
bind 127.0.0.1

# Belirli bir IP'den uzak erişim için:
# bind 127.0.0.1 10.0.0.5

# Protected mode (bind ayarlanmışsa otomatik aktif)
protected-mode yes

# Şifre koruması (zorunlu)
requirepass GucluRedisParolasi123!

# Port (varsayılan: 6379)
port 6379

Bellek Yönetimi

# Maksimum bellek limiti (RAM'in %25-50'si önerilir)
maxmemory 512mb

# Bellek limiti aşıldığında davranış
# allkeys-lru: En az kullanılan anahtarı sil (genel önbellek için ideal)
# volatile-lru: Expire süreli anahtarlardan en az kullanılanı sil
# noeviction: Hata döndür (kalıcı veri için)
maxmemory-policy allkeys-lru

Kalıcılık Ayarları

# RDB (Anlık görüntü) - önbellek için kapatabilirsiniz
save 900 1      # 900 saniyede 1+ değişiklik varsa kaydet
save 300 10     # 300 saniyede 10+ değişiklik varsa kaydet
save 60 10000   # 60 saniyede 10000+ değişiklik varsa kaydet

# Salt önbellek için RDB'yi kapat:
# save ""

# AOF (Append Only File) - kritik veri için aktifleştirin
appendonly no   # Önbellek için kapalı bırakın
# Ubuntu'da yeniden başlatın
sudo systemctl restart redis-server

# AlmaLinux'ta
sudo systemctl restart redis

Bağlantı Testi

redis-cli -a GucluRedisParolasi123! ping
redis-cli -a GucluRedisParolasi123! info server | grep redis_version

PHP ile Redis Entegrasyonu

PHP Redis Uzantısı Kurulumu

# Ubuntu
sudo apt install php8.3-redis -y
sudo systemctl restart php8.3-fpm

# AlmaLinux
sudo dnf install php-redis -y
sudo systemctl restart php-fpm

PHP ile Redis Kullanım Örneği

connect('127.0.0.1', 6379);
$redis->auth('GucluRedisParolasi123!');

// Değer kaydetme (300 saniye TTL)
$redis->setex('kullanici:123', 300, json_encode(['ad' => 'Ali', 'email' => 'ali@example.com']));

// Değer okuma
$kullanici = json_decode($redis->get('kullanici:123'), true);
echo $kullanici['ad']; // Ali

// Sayaç artırma
$redis->incr('sayfa_goruntulenme');
echo $redis->get('sayfa_goruntulenme');
?>

WordPress Redis Object Cache Entegrasyonu

  1. WordPress Eklentiler → Redis Object Cache eklentisini kurun ve aktifleştirin.
  2. wp-config.php dosyasına ekleyin:
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
define('WP_REDIS_PASSWORD', 'GucluRedisParolasi123!');
define('WP_REDIS_TIMEOUT', 1);
define('WP_REDIS_READ_TIMEOUT', 1);
define('WP_REDIS_DATABASE', 0);
  1. Eklenti ayarlarından "Enable Object Cache" butonuna basın.
  2. Bağlantı durumunu kontrol edin: Ayarlar → Redis → Connected görmelisiniz.

Sık Karşılaşılan Sorunlar

  • NOAUTH Authentication required: redis-cli komutuna -a parola ekleyin veya wp-config.php'deki parolayı kontrol edin.
  • Connection refused: Redis servisinin çalıştığını (systemctl status redis) ve bind ayarını kontrol edin.
  • OOM (Out of Memory): maxmemory değerini artırın veya maxmemory-policy ayarını yapılandırın.
  • Redis çok fazla bellek kullanıyor: redis-cli info memory ile kullanımı analiz edin. maxmemory sınırı tanımlayın.
  • Yavaş sorgular: redis-cli slowlog get 10 ile en yavaş 10 komutu görüntüleyin.

İlgili Makaleler

🤔 Bu kurulumda sorun mu yaşıyorsunuz?

Hata mesajınızı kopyalayıp foruma konu açın. Topluluğumuz size özel durumunuza göre yardımcı olacaktır.

🗨️ Foruma Katıl & Yardım Al
Etiketler: #performans #cache #laravel #redis #queue

Yorumlar

Henüz yorum yok. İlk yorumu siz yapın!

Yorum Yap

Yorumunuz onaylandıktan sonra yayınlanır.