找不到任何有关redis的信息scan match
这是否意味着如果我有 500,000 个键,它将一一迭代所有键并检查它们是否与模式匹配?或者它有其他一些巧妙的技巧来只提取相关键?
如果它实际上扫描了所有这些,它的性能是否明智?
谢谢
最佳答案
扫描基本上是阻塞的按键命令的替代。它将返回一个光标,您需要使用该光标再次扫描,然后该过程继续。重复也是可能的,因此您需要在应用程序逻辑中处理它们,这意味着即使您只有 100 万个 key 并且每次扫描扫描 10,000 个项目,它也可能会扫描超过 10 次。
所以这实际上是一种权衡,而不是使用keys,这是一个阻塞命令,但很快你可以使用scan,它实际上比keys命令慢,但在生产环境中不会阻塞,并且仍然可以实现你所需要的。
希望这有帮助
关于Redis扫描匹配大量key的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39273601/