Redis 基础教程

Redis 命令

Redis 高级教程

Redis 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/redis-command-cluster-keyslot.html

Redis CLUSTER KEYSLOT 命令

Redis 集群(Cluster) Redis 集群(Cluster)


Redis CLUSTER KEYSLOT 命令返回一个整数,用于标识指定键所散列到的哈希槽。该命令主要用来调试和测试,因为它通过一个 API 来暴露 Redis 底层哈希算法的实现。

命令格式

CLUSTER KEYSLOT key

可用版本:>=3.0.0

时间复杂度:O(N),N 为 key 的字节数。

命令返回值

返回哈希槽的值。

示例

该命令的使用示例:

  1. 客户端库可能会使用 Redis 来测试他们自己的哈希算法,生成随机的键并且使用他们自己实现的算法和 Redis 的 CLUSTER KEYSLOT 命令来散列这些键,然后检查结果是否相同。
  2. 人们会使用这个命令去检查哈希槽是哪个,然后关联 Redis Cluster 的节点,并且负责一个给定的键。
redis> CLUSTER KEYSLOT somekey
11058
redis> CLUSTER KEYSLOT foo{hash_tag}
(integer) 2515
redis> CLUSTER KEYSLOT bar{hash_tag}
(integer) 2515
redis>

注意该命令实现了完整的哈希算法,包括支持 hash tags,这是 Redis Cluster 键一个特殊的哈希算法,如果键名中存在左右大括号的模式,只会散列在 {和} 之间的字符串,为了去强制将多个键由一个节点来处理。