<b>在</b><b>PHP</b><b>中使用</b><b>memcache</b>
資料庫(select)讀出來的資料使用memcache。
在會話控制session中使用
<a href="http://blog.51cto.com/attachment/201210/011530165.gif" target="_blank"></a>
<?php
$mem=new Memcache;
$mem->connect("localhost",11211);
$sql="select * from saisai";
$mysqli=new mysqli("192.168.211.128","root","","test");
$result=$mysqli->query($sql);
$data=array();
while($row=$result->fetch_assoc()){
$data[]=$row;
}
$result->free();
$mysqli->close();
echo '<pre>';
print_r($data);
echo '</pre>';
?>
<a href="http://blog.51cto.com/attachment/201210/011539882.gif" target="_blank"></a>
$data=$mem->get("shops");
if(!$data){
$mem->set("shops",$data,MEMCACHE_COMPRESSED,3600);
echo $sql;
$mem->close();
使用memcache緩存資料庫内容,第一遍要查找資料庫,并輸出sql語句,以後就不用查找了。
<a href="http://blog.51cto.com/attachment/201210/011548219.gif" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201210/011558212.gif" target="_blank"></a>
<b>memcache</b><b>安全性:</b><b></b>
<b></b>
1、内網設定memcache:隻允許211.1通路
Memcache -d -u root -了192.168.211.1 -p 11211
2、使用防火牆:允許211的通路
Iptables -A input -p tcp -s 192.168..211.1 --dport 11211 -j ACCEPT //隻
<b>使用</b><b>memcached </b><b>的因素</b><b>:</b>
--如果是一個小網站,pv值不大,就不考慮使用memcache了
--變化頻繁,查詢頻繁,但是不一定寫入資料庫(适合memcached)(使用者線上狀态.)
--變化頻繁, 一變化就要入庫[比如股票,金融.](不适合memcached)
--變化不頻繁,查詢頻繁,不管如不入庫,都比較适合memcache。(新浪的新聞頻道)
本文轉自zsaisai 51CTO部落格,原文連結:http://blog.51cto.com/3402313/1032812