判断一个key在redis集群的哪一个节点(分片)

Posted 好大的月亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断一个key在redis集群的哪一个节点(分片)相关的知识,希望对你有一定的参考价值。

redis的集群模式下去需要确定一个key在哪个节点上的话,简单粗暴的就是一个个节点找过去。但是这样明显是费时费力的。

其实可以直接确定这个keyredis的哪个节点上,然后直接去这个节点找这个key就可以了.

1-先查看集群的几个节点的分片范围情况

./redis-cli -h ip -p port

查看集群节点

cluster nodes

或者合并成一句命令

./redis-cli -h ip -p port cluster nodes

或者更为直观的(推荐这种)

./redis-cli -c -h xxx.xxx.xxx.xxx -p 7004 cluster slots

可以看到集群的主从情况,以及具体每个主节点负责的分片范围。

2-查看key所在的分片
查看key对应的slot
通过redis-cli登录进其中一个节点后查找key所在的分片位置

cluster keyslot key

或者直接一行命令

./redis-cli -c -h xxx.xxx.xxx.xxx -p 7004 cluster keyslot com:bee:wx:token:access*

以上是关于判断一个key在redis集群的哪一个节点(分片)的主要内容,如果未能解决你的问题,请参考以下文章

Redis集群重新分片(新增/移除节点)理论

Redis集群

Redis集群

Redis集群搭建

redis cluster 部署过程

Redis--集群