ruby redis客户端扫描vs键

时间:2014-03-03 10:02:59

标签: ruby redis

我正在为redis的ruby客户端寻找一些没有运气的文档。 我正在使用密钥,但我听说他们在生产redis中的表现非常糟糕。

$redis = Redis.new(host: Settings.redis_host, port: Settings.redis_port)
keys = $redis.keys("prefix*")

想要切换到$redis.scan("prefix*"),但我没有找到任何示例。 也尝试了

keys = $redis.scan(0, {match: "key:1?"})
Redis::CommandError: ERR syntax error
keys = $redis.scan(0, match: "key:1?")
Redis::CommandError: ERR syntax error

对此有所了解。 感谢。

编辑: 将redis客户端从3.0.4更新到3.0.7之后

keys = $redis.scan(0, match: "prefix*")

的工作。

1 个答案:

答案 0 :(得分:6)

这样做:

keys = $redis.scan(0, match: 'prefix?')

Here是您需要的“文档”。

请务必阅读SCAN的{​​{3}}。