我有一堆以下模式的键:
config:id:attr
现在我想通过首先查找以config:
开头的所有键,然后检索它们的关联值来阅读所有配置。
这样做的有效方法是什么?
注意:keys()
方法可以完成这项工作,但不建议用于生产用途。
答案 0 :(得分:4)
建议不要在生产中使用密钥,因为它是O(N),其中N是redis实例中的密钥数。如果你没有很多配置值,那么使用密钥是合理的。但是,它不是很可扩展,我不推荐它。
我的解决方案是将所有配置密钥名称存储在redis中的另一个列表中。只需在添加新配置值时插入列表即可。
另一个合理的选择是将所有配置值存储在哈希中,如:
config => { "id:attr" => value }
然后,您可以通过调用hkeys('config')获取所有配置密钥。