在生产中从Redis获取N个密钥

问题描述 投票:1回答:0

我正在尝试在生产中从Redis检索N个密钥。 当我尝试从Redis Server获取keys * ,它会在很长的响应时间后返回所有密钥(我的Redis服务器一次至少包含约1000万行)。 因此,在寻找解决方案之后,我发现了HSCAN命令以获取N个键。 但是在Redis文档中它说:

只有在迭代集合的大小保持在给定的最大大小范围内时,才能保证SCAN算法终止;否则,对一直增长的集合进行迭代可能会导致SCAN从不终止完整迭代。 这很容易直观地看出:如果集合增长了,为了访问所有可能的元素,将会有越来越多的工作要做,而终止迭代的能力取决于对SCAN的调用次数及其COUNT选项值与集合的增长率。

我以为我无法使用此解决方案,因为我的Redis服务器总是在白天将键值对写入哈希中。 哈希值总是增长,并且终止HSCAN命令可能会出现问题。

redis production
© www.soinside.com 2019 - 2024. All rights reserved.