PHP ile Memcached Kullanımı
Memcached, PHP geliştiricileri tarafından sıklıkla kullanılan bir önbellekleme sistemidir. Bu yazıda, Memcached’in ne olduğuna, nasıl çalıştığına ve PHP ile nasıl kullanılabileceğine dair ayrıntılı bir açıklama yapacağız.
Memcached Nedir?
Memcached, dağıtık bir bellek önbellekleme sistemi olarak tanımlanabilir. Veritabanı işlemlerini hızlandırmak ve sunucu yükünü azaltmak için kullanılır. Memcached, yüksek trafikli web sitelerinde performansı artırmak için ideal bir çözümdür.
Memcached Nasıl Çalışır?
Memcached, RAM’de depolanan verileri kullanır. Veriler, PHP kodundan veya başka bir uygulamadan Memcached’e eklenir. Bir sonraki istek geldiğinde, veriler önbellekten okunarak tekrar kullanılabilir. Bu, veritabanı yükünü azaltarak daha hızlı yanıtlar verir.
Memcached, dağıtık bir sistemdir. Birden fazla Memcached sunucusu kullanarak önbelleği genişletebilir ve yükü paylaştırabilirsiniz.
PHP ile Memcached Kullanımı
Memcached’i PHP ile kullanmak oldukça kolaydır. PHP kodu, Memcached’e bağlanarak verileri önbelleğe alabilir veya önbellekten okuyabilir.
İlk olarak, Memcached’i sunucunuza yüklemeniz gerekiyor. Memcached sunucusunu yüklemek için şu komutları kullanabilirsiniz:
Ubuntu: sudo apt-get install memcached CentOS: sudo yum install memcached
Memcached sunucusunu başlatmak için şu komutları kullanabilirsiniz:
sudo systemctl start memcached sudo systemctl enable memcached
Daha sonra, PHP kodunda Memcached sınıfını kullanarak önbellek işlemleri gerçekleştirebilirsiniz. Örneğin, aşağıdaki kod Memcached’e “hello” adında bir anahtar ve “world” değerini ekler:
$memcache=newMemcached();
$memcache->add("hello", "world");
Ardından, aşağıdaki kod “hello” anahtarını kullanarak önbellekteki veriyi okur:
$value = $memcache->get("hello");
Memcached ile ilgili diğer özellikleri keşfetmek ve kullanmak için PHP’nin resmi belgelerine bakabilirsiniz.
Kod Örneği
<?php
// Memcached sunucusuna bağlanma
$memcache=newMemcached();
$memcache->addServer('localhost', 11211);
// Önbelleğe veri ekleme
$memcache->set('my_key', 'Data to be cached', 3600);
// Önbellekten veri okuma
$cached_data = $memcache->get('my_key');
if ($cached_data) {
// Önbellekte veri varsa kullan
echo "Data from cache: " . $cached_data;
} else {
// Önbellekte veri yoksa veritabanından çek ve önbelleğe ekle
$data_from_db = some_db_query_here();
$memcache->set('my_key', $data_from_db, 3600);
echo "Data from DB: " . $data_from_db;
}
?>
Bu örnekte, öncelikle Memcached sunucusuna bağlanıyoruz. Ardından ‘my_key’ adında bir anahtar ve ‘Data to be cached’ adında bir değer ekliyoruz. Bu veriler, 3600 saniye boyunca önbellekte saklanacak.
Daha sonra, önbellekteki veriyi okuyoruz. Eğer önbellekte veri varsa, onu kullanarak ‘Data from cache’ mesajını yazdırıyoruz. Eğer önbellekte veri yoksa, veritabanından veriyi çekip önbelleğe ekliyoruz ve ‘Data from DB’ mesajını yazdırıyoruz.
Sonuç
Memcached, PHP geliştiricileri tarafından sıklıkla kullanılan bir önbellekleme sistemidir. Veritabanı yükünü azaltarak web uygulamalarının hızını artırabilir. PHP kodunda Memcached sınıfını kullanarak önbellek işlemleri oldukça basittir.