请教一个关于memcache中世纪运用的一个问题

ffvsnn520 发布于 2014/06/25 22:03
阅读 127
收藏 1

现在是这样的.我从网上获取了很多数据,每个都有一个tpclass_id,我要把这些数据让到数据库.(因为这个id通过写好的js可以生成一段对话,js这部分不需要考虑).现在说一下我的思路.

我用一段简单的代码表示:

//存id的表假定为url_table.
$mem = new memcache;
//这里假定链接成功
//查询数据库
select * from url_table where id = $url;

if(//如果这里查到了.证明数据库里面有){
 $mem -> get($id);
}else{    
  //没查到,先从网站上获取,然后再插入数据库.在这里插入的时候我会设定一个锁.防止重复插入.add一个值为1和0的.不知道在特别大的并发的时候会怎样.这里也想请各位指点一下.
  file_get_contents('....');
  //这里通过正则表达式获取我需要的部分.可能匹配多个.
  //所以我用他们的唯一tpclass_id作为建.命名变成为$id;
  //然后存入$mem
  $mem->set($id,$array);//这里设定的key为$url.这里的判断都是有的.这里只是简单写了下.
}

其实这所有的都在一个function里面.
然后开始解释.因为第一次进function.我只能获取一个$Url.第一个查询url_table表只能用url为条件.
第一个问题出来了.这里我用$id是肯定去不到的.那么我想问的是.对于这种想要动态设定的key应该如何设置.
第二就是我这里的锁,科恩2个并发没问题,但是多了不知道会不会有问题.所以想请教一下.在线等,非常感谢







加载中
返回顶部
顶部