$sql = select * from typecho_contents where cid='1' ;$memc_key = md5($sql);$memc= new memcached();$memc->addserver('127.0.0.1', '11211');$memc_res = $memc->get($memc_key);if($memc_res){ echo $memc_res;}else{ //数据库查询得到$str $memc_res = $memc->set(memc_key,$str); //此时用set呢,还是应该$memc->getresultcode()查询上次错误信息,使用add呢?}
set 和 add 的使用需要有意区分么,那我岂不是一律使用set就可以了么
回复内容: $sql = select * from typecho_contents where cid='1' ;$memc_key = md5($sql);$memc= new memcached();$memc->addserver('127.0.0.1', '11211');$memc_res = $memc->get($memc_key);if($memc_res){ echo $memc_res;}else{ //数据库查询得到$str $memc_res = $memc->set(memc_key,$str); //此时用set呢,还是应该$memc->getresultcode()查询上次错误信息,使用add呢?}
set 和 add 的使用需要有意区分么,那我岂不是一律使用set就可以了么
http://serverfault.com/questions/291681/add-vs-set-in-memcached
简单的来说就是如果你不在意是否有这个key的话就直接用set吧。
set和add最显而易见的区别就是:
如果key是已经存在的set是更新原来的数据,而add则不会。
set偏向于赋值更新吧,add偏向于添加数据组。