Redis集群:是否可以从不同的键中获取一个哈希槽?
Redis Cluster: Is it possible to obtain one hash slot from different keys?
我从 Redis 集群教程中了解到,集群只有 16384 个槽(0 - 16383)。哈希槽是通过以下命令计算的:CRC16 (KEY) mod 16384
。因此,例如某些密钥的 CRC16 等于 16385
,哈希槽将为 1
。对于另一个密钥,CRC16 等于 32769
,哈希槽将再次为 1
。它会引起一些冲突吗?还是第一个会被第二个重写?
如果我理解你的问题,不,这不是冲突。每个key属于一个hashsolt,但是每个hashslot可以有多个key。
CLUSTER GETKEYSINSLOT slot count
: https://redis.io/commands/cluster-keyslot
我从 Redis 集群教程中了解到,集群只有 16384 个槽(0 - 16383)。哈希槽是通过以下命令计算的:CRC16 (KEY) mod 16384
。因此,例如某些密钥的 CRC16 等于 16385
,哈希槽将为 1
。对于另一个密钥,CRC16 等于 32769
,哈希槽将再次为 1
。它会引起一些冲突吗?还是第一个会被第二个重写?
如果我理解你的问题,不,这不是冲突。每个key属于一个hashsolt,但是每个hashslot可以有多个key。
CLUSTER GETKEYSINSLOT slot count
: https://redis.io/commands/cluster-keyslot