长时间运行操作会锁定redis吗?

Max*_*Max 6 redis

在Redis的一些操作,比如SINTERSTORE

时间复杂度: O(N*M)最坏情况,其中N是最小集合的基数,M是集合的数量.

在我的用例中,我希望每组比较15,000个项目.对这些集合执行N*M操作将是O(30,000).操作没有时间要求,这意味着我不在乎需要多长时间.我的问题是,当计算发生时,我的Redis是否会锁定.有任何想法吗?

小智 2

简单的答案是“是”,因为 Redis 基于单线程架构。

不简单的答案是“这取决于” - 如果您以优化的方式对 Redis 进行分片,则只有执行此复杂操作的分片会被阻止,其他分片不会被阻止。