redis里如何高效删除匹配某个字符串的所有值

比如在一个db里,有一堆键为topic:xxxxxxuser:xxxxxx的值,而如果我只想让所有的user:xxxxxx失效,有什么办法吗?

这是一个很常见的应用场景,比如user:xxxxxx对应的表结构改变了,需要重新缓存,而我不希望影响其他的数据。

我想到的是用KEYS user:*命令来遍历所有符合条件的数据。但是这个命令太耗资源了,有什么其它办法吗?

阅读 7.8k
2 个回答

user的所有键的ID应该统一放到一个列表中去管理,这样就方便读取了

这种不是应该用一个hash类型保存数据吗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进