3

我有一堆以下模式的键:

config:id:attr

现在我想通过首先找到所有以 开头的键config:,然后检索它们的关联值来读取所有配置。

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

注意:keys()方法可以完成工作,但不建议用于生产用途。

4

1 回答 1

4

不建议在生产中使用 Keys,因为它是 O(N),其中 N 是 redis 实例中的键数。如果您没有很多配置值,则使用键是合理的。但是,它的可扩展性不是很高,我不推荐它。

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

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

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

然后,您可以通过调用 hkeys('config') 来获取所有配置键。

于 2012-09-09T02:11:13.417 回答