我有一个查询,该查询将在2秒钟内执行。问题是:例如,当两个用户同时输入URL:http://mypage.com/getInfo时,它将执行两次查询,因为第一次MySql查询尚未在Memcached中进行缓存。
$memcache = Memcache::init();
if(! $memcache->get("info")) {
$query = "SELECT T0.`type`, T0.notice FROM my_table WHERE...";
$statement = $db->prepare($query);
$statement->execute(array($id));
$notices = $statement->fetchAll(\PDO::FETCH_OBJ);
if(!$notices) {
return false;
}
$memcache->set("info", json_encode($notices), 0, 86400);
}
$objnotices = (object) json_decode($memcache->get("info"));
return $objnotices;
谢谢。