2011-06-29 66 views
0
function select(){ 
    //format sql string 
    $sql = format($sql); 
    //a unique key to store this query 
    $encodeKey = md5($sql); 
    if($cacheObj = $memcache->get($encodeKey)){ 
     // cache data exist ,to get it 
     $result = $cacheObj; 
    } 
    else{ 
     //or create a cache data 
     $query = $this->exec($sql); 
     $result = mysql_fetch_array($query); 
     $memcache->set($encodeKey, $result); 
    } 
    return $result; 
} 

我用MD5方法查詢字符串存儲爲memcached的關鍵, 這是一個好的辦法嗎?或者比這更好的東西。PHP中使用memcached來存儲查詢數據,有事商量

和「格式」功能, 從表選擇字段其中id =「5」,並從表中選擇字段其中id = 5 是相同的查詢, 所以我必須編寫一個批號的格式化兩者的他們。 任何更好的設計可以理解

回答

0

使用MD5生成一個密鑰是好的,雖然它可能具有潛在的性能影響。使用該方法的缺點是其更難以在高速緩存應該底層數據變化選擇性到期數據。

相關問題