Memcached nedir?

Memcached, MySQL sunucuları ile önbellek katmanı arasında kullanıdığı bir dağıtık hafıza önbellekleme sistemidir.

Nerede kullanılır ?

Sık talep edilen bilgileri sunmada ve veritabanını belirli ölçüde rahat bırakmada kullanılır. Hiç şüphe yokki belleğe
erişim, diske erişimden daha hızlıdır. Veritabanlarının tamponlama ( caching ) özelliği olsada duruma göre memcached
dağıtık yapısı nedeni ile tercih edilebilir.
Web sitelerinde kullanım yerleri olarak ;
+ Giriş işlemlerinde kullanıcı oturumlarının saklaması,
+ Siteiçi aramalarda , çok sık yapılan aramalar için kelimeler ve sonuçlarının hafızada saklanması,
+ Günlük yada haber sitelerinde ilk sayfada çıkan haberlerin hafızda saklanması,
örnek verilebilir.

Memcached kullanan web sitelerin başında Facebook gelmektedir.

Tavsiyelerim

NorthScale Membase Server


ns-box-trans

Rahatlıkla kullanabileceğiniz Memcached server. Anlık bellek trafiğini takip edilmeniz için güzel bir ara yüzü bulunmakta. Memcached de saklanan anahtarları takip edebilirsiniz.

Örnek kodlar

addServer('localhost','11211');
echo memcache_get_server_status($memc, 'localhost', 11211);
 
	   mysql_connect("localhost","root","");
	   mysql_select_db("memcache_deneme");
 
?>
 
 Denemep
 
<form method="post">
 
<strong>İsim</strong>: <input name="ad" size="20" type="text" />
 
<input type="submit" />
</form>
 
<hr />
 
get($_REQUEST['ad']);
 
if ($value)
  {
	  echo "Ad=".$value['ad']." Soyad=".$value['soyad']." Cinsiyet=".$value['cinsiyet']." Yaş=".$value['yas']."";
	  echo "
Memcached verisi";
 
foreach (array_keys($value) as $key)
      {
	printf("
 
<strong>%s</strong>: %s
 
",$key, $value[$key]);
      }
  }
 else
   {
     $result =mysql_query(sprintf('select * from kayitlar where ad ="%s"',$_REQUEST['ad']));
 
     $row = mysql_fetch_array($result);
	 echo $key = md5('query'.$$result);
 
     $memc-&gt;set($row['ad'],$row,0,10);
 
     printf("
 
Loaded %s from MySQL
 
",$row['ad']);
   }
 
?&gt;

Ek Dosyalar: