2012-09-08 47 views
3

他们的价值观我有一堆以下模式键:找到所有匹配的前缀键和检索Redis的

config:id:attr 

现在我想通过首先找到的所有键开始阅读所有的CONFIGS config:,然后检索它们的关联值。

这样做的有效方法是什么?

注意:keys()方法可以完成这项工作,但不推荐用于生产用途。

回答

4

不推荐在生产环境中使用密钥,因为它是O(N),其中N是redis实例中密钥的数量。如果你没有很多配置值,使用密钥是合理的。但是,它不会很有伸缩性,我不会推荐它。

我的解决方案是将所有配置键名称存储在redis中的另一个列表中。只需添加一个新的配置值即可插入列表中。

另一种合理的选择是只所有的配置值存储在一个哈希,如:

config => { "id:attr" => value } 

然后,您可以通过调用hkeys(“配置”)得到的所有配置项。

+0

我去了你的第一个方法 - 分别维护一组配置密钥。谢谢。 – skyork