Кэширование результатов динамического SQL с помощью Memcache/APC
Я могу кэшировать набор результатов SQL с помощью Memcache или APC, но мне нужно знать, как это сделать в случае динамического SQL.
Я создаю систему порталов колледжа, поэтому необходимо кэшировать некоторую информацию пользователя.
Должен ли я сделать что-то вроде:
$stmt=mysqli_prepare($con,"SELECT Info FROM Main where UID=?");
mysqli_stmt_bind_param($stmt, $uid);
mysqli_stmt_execute($stmt);
mysqli_stmt_bind_result($stmt, $data);
mysqli_stmt_fetch($stmt);
mysqli_stmt_close($stmt);
$key = sha1("SELECT Info FROM Main where UID=$uid");
apc_store($key, $value);
$value_in_cache = false;
$value = apc_fetch($key, $value_in_cache);
if(!$value_in_cache) {
echo 'Looking at DB';
//re store in APC
}
else
{
echo 'Looking at Memory';
print_r($value);
}
это способ сделать или есть какой-нибудь ярлык?
На сайте я обнаружил, что просто присваивая MEMCACHE для session_handler, MEMCACHE кэширует и управляет сессией.
это правда? если так, есть ли ярлык для этой проблемы тоже?