在 Memcache 中存储了很多分页数据,key 的定义如下
$"project_{userId}_{page}_{size}"
当新增或者修改一个记录的时候,需要清除这些缓存。
但是 Memcache 不支持按照通配删除,那么如何删除缓存呢?
stackoverflow 上有人使用 Namespace 删除,实现原理就是给相关的 Key 加上 version,通过改变 version 的值达到“删除”的效果。
这种方式还是比较麻烦,请问有更好的方式实现吗?
可以用笨方法,如果有100页,就删除100次
不仅不知道有多少页,也不知道每页多少条
@蝌蝌: 我通常在分页列表中将总页数限制为200,过多的页数除了给别人爬网带来方便,其他没发现什么好处
@蝌蝌: 或者用一个缓冲项专门保存页数或者需要清除的缓存key