我有一堆具有以下模式的键:
config:id:attr
现在我想通过首先找到所有以 config:
开头的键来读取所有配置,然后检索它们的关联值。
执行此操作的有效方法是什么?
注意:keys()
方法可以完成这项工作,但不建议在生产环境中使用。
最佳答案
不建议在生产中使用 key ,因为它是 O(N),其中 N 是您的 Redis 实例中的 key 数量。如果您没有很多配置值,那么使用键是合理的。但是,它的可扩展性不是很好,我不推荐它。
我的解决方案是将所有配置键名称存储在 redis 的另一个列表中。添加新的配置值时也只需插入到列表中即可。
另一种合理的选择是将所有配置值存储在哈希中,例如:
config => { "id:attr" => value }
然后您可以通过调用 hkeys('config') 获取所有配置 key 。
关于redis - 查找与前缀匹配的所有键并在 Redis 中检索它们的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12335238/