php использует memcached для хранения данных запросов, что-то для обсуждения - PullRequest
0 голосов
/ 29 июня 2011
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, это хороший способ? или что-то лучше этого.

и в функции «формат», выберите поле из таблицы, где id = '5' и выберите поле из таблицы, где id = 5 это тот же запрос, поэтому я должен написать много кодов для их форматирования. любой лучший дизайн будет оценен

1 Ответ

0 голосов
/ 29 июня 2011

Использование md5 для генерации ключа - это нормально, хотя это может иметь потенциальное влияние на производительность. Недостатком использования этого метода является более сложный выборочный срок действия данных в кеше в случае изменения базовых данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...