数据库提供有空闲时插入子句,所以插入数据时就不必劳烦你做缓存了读取数据时的缓存应以查询指令作为缓存键
$a = memcache::get($sql);
if(empty($a)) {
  查询并读取数据到 $a
  memcache::set($url, $a);
}
返回独到的数据 $a

解决方案 »

  1.   

    流程如下:
    1.判断memcache是否有数据,数据是否过期。
    2.如果memcache有数据且未过期,直接取出memcahe数据使用。
    3.如果memcache没有数据或数据已过期,则读取db获得数据,并把数据写入memcache,留待下次使用。
    4.当db有插入操作时,更新db的同时更新memcache数据。
      

  2.   

    会啊 有点看懂了 主要看memcache有没有数据没有数据就从数据库读取 同时放到memcache(这个地方要2步操作么 先读取数据库获得数据  读取数据库memcache) 到如果有数据 就直接读取memcache  
    插入的时候我更不懂了当db有插入操作时,更新db的同时更新memcache数据。 
      

  3.   

    读取
    $data = memcache_get_data();
    if(!$data){
        $data = db_get_data();
        memcache_set_data($data);
    }
    echo $data;
    写入
    db_set_data($data);
    memcache_set_data($data);