cache lite / memcache

时间:2010-07-27 07:46:48

标签: sql encryption caching md5 memcached

我有一个函数,根据用户所在的页面构建查询,通过参数数组值,一旦构建查询,然后返回,所以我们可以执行它并获得我们想要的结果。

我们需要把缓存放在上面,所以我们可以加快速度,我真的很混淆如何制作缓存ID,因此查询是一种动态的(取决于数组值),也可以有搜索值,也会不时地改变结果,取决于你要搜索的内容。

我的问题是,无论如何我可以使用返回查询(select * from ... .. ..)和make和id,也许使用md5或其他方式,如果查询相同则保持相同如果查询不同,会进行更改吗?

1 个答案:

答案 0 :(得分:0)

如果您使用查询的MD5,您将无法在稍后的memcache日志中识别密钥。

GET SQLCache:ad98234080acaffaac908233不是很好。

最好的方法是命名密钥

Cache.set('catalog:books:1-200',书籍)和每个Cache.set页面存储“N”项的块。这将使您能够根据需要构建特定的页面块。

遍历列表并不总是处理大量数据的最佳方式。

您可以每天在摘要表中预先构建“列表”,然后从那里缓存结果。

-daniel