Konuyu Açan
#1
Redis, yüksek performanslı ve bellek tabanlı bir veri yapısı sunucusudur. Özellikle web uygulamalarında hız ve ölçeklenebilirlik sağlamak için cache, session yönetimi ve mesaj kuyruğu gibi işlemlerde kullanılır. CodeIgniter gibi popüler PHP framework’leriyle Redis entegrasyonu, uygulamanın yanıt süresini kısaltır ve kaynak kullanımını optimize eder. Bu yazıda, Redis kurulumundan başlayarak CodeIgniter ile nasıl entegre edileceğine kadar adım adım anlatıyorum.
İlk olarak, Redis’in sisteminizde düzgün şekilde kurulması gerekir. Linux tabanlı sistemlerde genellikle aşağıdaki komutlar kullanılır:
KOD
12sudo apt update
sudo apt install redis-serverKurulum tamamlandıktan sonra, Redis servisini başlatıp durumu kontrol etmek önemlidir:
KOD
123sudo systemctl start redis
sudo systemctl enable redis
redis-cli pingCevap olarak “PONG” almanız Redis’in çalıştığını gösterir.
CodeIgniter ile Redis entegrasyonu için birkaç temel adım izlenir:
- PHP Redis Uzantısını Kurma
PHP Redis uzantısı, Redis ile PHP arasında köprü görevi görür. Kurulum için:
KOD
12sudo apt install php-redis
sudo systemctl restart php-fpm // veya web sunucunuza göre restart- Config Dosyası ve Bağlantı Ayarları
Uygulama içindeki
application/config/config.php veya yeni nesil yapılar kullanıyorsanız uygun yapılandırma dosyası içine:KOD
12345[php]
$redis_host = '127.0.0.1';
$redis_port = 6379;
$redis = new Redis();
$redis->connect($redis_host, $redis_port);
- CodeIgniter’a Entegrasyon
Kendi kütüphanenizi veya helper’ınızı oluşturabilir veya hazır kütüphaneleri kullanabilirsiniz. Basitçe, Redis sınıfını yükleyip kullanmak şöyle olur:
[code]
PHP
1234567891011121314151617181920
class MY_Redis {
protected $redis;
public function __construct() {
$this->redis = new Redis();
$this->redis->connect('127.0.0.1', 6379);
}
public function set($key, $value, $expire = 0) {
if ($expire > 0) {
$this->redis->setex($key, $expire, $value);
} else {
$this->redis->set($key, $value);
}
}
public function get($key) {
return $this->redis->get($key);
}
}
Bu sınıfı kullanarak, cache veya session gibi işlemleri Redis üzerinde yapabilirsiniz. Örneğin, cache için:
[code]
PHP
1234
$this->load->library('my_redis');
$this->my_redis->set('kullanici_bilgisi', json_encode($kullanici), 3600);
$bilgi = json_decode($this->my_redis->get('kullanici_bilgisi'), true);
Redis entegrasyonu, özellikle yüksek trafikli uygulamalarda performansı belirgin şekilde artırır. Bu temel kurulum ve entegrasyon adımları sonrası, ihtiyaçlarınıza göre özelleştirmeler yapabilir, Redis’in diğer gelişmiş özelliklerini kullanmaya başlayabilirsiniz.
