memcache 配合資料庫的實作

<?php
$memcache = new Memcache;
$memcache->connect('memcached_server', 11211) or die ("Could not connect");
$name = $memcache->get('$A1234567890');
if (!$result){ //如果memcache中沒有該筆資料的話從資料庫中select出來,並寫一份cache到memcache中
        echo "從資料庫裡面抓出來的資料";
        $link = mysql_connect ("mysql_server","user","password");
        $sql = "select name from DB.TABLE where cid='A1234567890'";
        $result = mysql_query ($sql,$link);
        $row = mysql_fetch_array($result);
        echo $row['name'];
        mysql_free_result ($result);
        mysql_close($link);
        $memcache->add('$A1234567890',$row['name'], false, 10); //寫進memcache中,TTL設為10sec
} else {
        echo "從memcached裡面抓出來的資料";
        echo $name;
}
?>

另外咧
insert的sql可以配合$memcache->add
update的sql可以配合$memcache->set
delete的sql可以配合$memcache->delete寫進memcache中
保持database與memcache中的資料一致性
arrow
arrow
    全站熱搜

    helloworld 發表在 痞客邦 留言(0) 人氣()