Sitemize hoşgeldiniz!  ::  Son eklenen yazı: Git’te “master” mı “main” mi? Bir kelimenin ardındaki hikâye  ::  Toplam 63 yazı  ::  Görüş ve önerileriniz için iletişim sayfasını kullanabilirsiniz.
» Menü
Anasayfa
Hakkımda
İletişim
» Kategoriler
› nostalji (8)
› laravel (7)
› php (5)
› web (3)
› agile (3)
› go (2)
› golang (2)
› api (2)
› redis (2)
› git (2)
› github (2)
› model (1)
» Arşiv
› Ekim 2025 (2)
› Temmuz 2025 (1)
› Nisan 2025 (3)
› Mart 2025 (5)
› Şubat 2025 (1)
› Ocak 2025 (43)
› Haziran 2011 (1)
› Kasım 2009 (1)
› Temmuz 2009 (1)
› Temmuz 2007 (1)
› Ocak 2007 (1)
› Kasım 2006 (1)
› Ekim 2006 (1)
› Ağustos 2006 (1)
Anasayfa » Yazılar » Laravel Redis ve Cache
Laravel Redis ve Cache
Yazan: Atilla Mutlu | Tarih: 14.01.2025 10:32 | Kategori: redis, cache

Laravel, performansı artırmak ve sık kullanılan verileri hızlı bir şekilde sunmak için önbellekleme mekanizmaları sunar. Redis, bu mekanizmalardan biri olarak öne çıkar. Laravel ve Redis birlikte kullanıldığında, uygulama performansının çok daha üygün bir seviyeye çekilmesi mümkün olur.


Redis Nedir?

Redis (“Remote Dictionary Server”), bir key-value (anahtar-değer) tabanlı veritabanıdır. Redis genellikle aşağıdaki amaçlarla kullanılır:

  • Önbellekleme: Veri hızlıca saklanabilir ve alınabilir.
  • Oturum Yönetimi: Kullanıcı oturumlarını saklamak için.
  • Mesaj Kuyruğu: Gerçek zamanlı işlemlerde mesaj kuyruklama için.
  • Gerçek Zamanlı Analiz: Veri analizlerinde ve sayaç yönetiminde.

Laravel'de Redis Kurulumu

1. Redis Yükleme

Redis'i bilgisayarınıza yükleyin:

  • Windows:

  • MacOS:

    brew install redis
  • Linux:

    sudo apt update
    sudo apt install redis-server

Redis sunucusunu başlatmak için:

redis-server

2. Laravel Redis Paketini Kurma

Laravel’de Redis’i kullanmak için predis/predis ya da phpredis paketlerinden birini kurabilirsiniz.

Predis Kurulumu:
composer require predis/predis
PhpRedis Kullanımı:

PhpRedis genellikle performans olarak daha iyidir ve PHP’nin bir eklentisi olarak çalışır. Bu eklentiyi PHP’nize dahil etmek için:

  • Linux:

    sudo apt install php-redis
  • Windows:
    PHP eklentisini buradan indirip php.ini dosyanızda etkinleştirin.


Redis'i Laravel ile Kullanma

1. Redis Ayarlarını Yapılandırma

Laravel, Redis ayarlarınızı config/database.php dosyasında tanımlar.

'redis' => [
    'client' => env('REDIS_CLIENT', 'predis'),

    'default' => [
        'url' => env('REDIS_URL'),
        'host' => env('REDIS_HOST', '127.0.0.1'),
        'password' => env('REDIS_PASSWORD', null),
        'port' => env('REDIS_PORT', 6379),
        'database' => env('REDIS_DB', 0),
    ],

    'cache' => [
        'url' => env('REDIS_URL'),
        'host' => env('REDIS_HOST', '127.0.0.1'),
        'password' => env('REDIS_PASSWORD', null),
        'port' => env('REDIS_PORT', 6379),
        'database' => env('REDIS_CACHE_DB', 1),
    ],
],

2. Environment (.env) Ayarları

.env dosyanıza Redis ayarlarını ekleyin:

REDIS_CLIENT=predis
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PASSWORD=null
REDIS_DB=0
REDIS_CACHE_DB=1

Laravel’de Önbellekleme (Caching)

1. Önbellek Sürücüsünü Redis Olarak Ayarlama

Laravel, önbellekleme için varsayılan sürücü Redis olacak şekilde ayarlanabilir. Bunun için config/cache.php dosyasında redis kullanılması gerektiğini belirtin:

'default' => env('CACHE_DRIVER', 'redis'),

.env dosyası:

CACHE_DRIVER=redis

2. Önbelleğe Veri Ekleme

use Illuminate\Support\Facades\Cache;

// 5 dakika boyunca saklanacak bir veri ekleyelim
Cache::put('anahtar', 'değer', now()->addMinutes(5));

3. Önbellekten Veri Alma

$deger = Cache::get('anahtar');
echo $deger; // Çıktı: değer

4. Varsayılan Değer Belirleme

Anahtar bulunamadığında bir varsayılan değer döndürmek için:

$deger = Cache::get('olmayan_anahtar', 'varsayilan_deger');
echo $deger; // Çıktı: varsayilan_deger

5. Veriyi Kalıcı Olarak Saklama

Cache::forever('anahtar', 'kalici_deger');

6. Önbellekten Veri Silme

Cache::forget('anahtar');

7. Önbelleği Tamamen Temizleme

Tüm önbelleği temizlemek için:

php artisan cache:clear

Laravel’de Redis Kullanarak Oturum Yönetimi

Laravel’de oturum yönetimi Redis ile yapılandırılabilir. Bunun için config/session.php dosyasındaki SESSION_DRIVER ayarını şu şekilde değiştirin:

'driver' => env('SESSION_DRIVER', 'redis'),

.env dosyası:

SESSION_DRIVER=redis

Queue (Kuyruk) Mekanizmasında Redis Kullanımı

Laravel’de kuyruk sistemini Redis ile yönetebilirsiniz.

1. Queue Sürücüsünü Redis Olarak Ayarlama

config/queue.php dosyasında Redis’i sürücü olarak belirtin:

'default' => env('QUEUE_CONNECTION', 'redis'),

.env dosyası:

QUEUE_CONNECTION=redis

2. Queue Worker'ları Başlatma

Kuyruk işlemlerini Redis üzerinde başlatmak için:

php artisan queue:work

Redis Komutları ile Veri Yönetimi

Laravel’de Redis’i direkt kullanarak key-value verileri yönetebilirsiniz:

Veri Ekleme ve Alma

use Illuminate\Support\Facades\Redis;

// Veri ekleme
Redis::set('anahtar', 'değer');

// Veri alma
echo Redis::get('anahtar');

Sayaç Artırma ve Azaltma

Redis::incr('sayaç'); // Sayaçı 1 artır
Redis::decr('sayaç'); // Sayaçı 1 azalt

Sonuç

Laravel Redis entegrasyonu, performansı optimize etmek ve uygulama verimliliğini artırmak için son derece önemli bir özelliktir. Önbellekleme, oturum yönetimi ve kuyruk sistemleri Redis ile çok daha hızlı ve etkili hale gelir. Yukarıdaki adımları takip ederek Laravel projelerinde Redis'i kolayca kullanabilirsiniz.

« Geri dön | Yorum gönder | Yukarı ↑
» Hakkımda
A
Atilla Mutlu
Yazılım Geliştirici

Devamını oku »
» Son Yazılar
› Git’te “master” mı “main” mi? Bir kelimenin ardındaki hikâye
› Laravel Model Controller
› PostgreSQL Mini‑Kılavuz
› ReactJS Rehberi
› Spatie Laravel Paketleri
» İstatistik
Ziyaretçi Sayısı
036377
Toplam yazı: 63
PHPpowered SQLiteinside Firefoxile daha iyi CSStables ♥
Bu site en iyi 1024x768 çözünürlükte görüntülenir.
Copyright © 2006-2026
Anasayfa | Hakkımda | İletişim | Yukarı ↑
Bu sayfa 0,017 saniyede oluşturuldu.