Python代码实现Redis集群获取key

1.安装redis和redis-py-cluster

import redis
from rediscluster import RedisCluster

在这里插入图片描述

2.建立连接

startup_nodes = [
    {"host": 'x.x.x.x', "port": 7000},
    {"host": 'x.x.x.x', "port": 7001},
    {"host": 'x.x.x.x', "port": 7002},
    {"host": 'x.x.x.x', "port": 7003},
    {"host": 'x.x.x.x', "port": 7004},
    {"host": 'x.x.x.x', "port": 7005},
    # 添加集群中所有节点的端口配置...
]
redis_client = RedisCluster(startup_nodes=startup_nodes, decode_responses=True)

3.获取指定key的value

 key_str = 'realStat@'+str(targetPointId)
 hash_values = redis_client.hgetall(key_str)

4.获取所有key

def scan_all_slots(rc):
    """遍历所有槽位并扫描其中的key"""
    all_keys = []
    # Redis Cluster有16384个槽位
    for slot in range(0, 16384):
        keys_in_slot = rc.execute_command('CLUSTER', 'GETKEYSINSLOT', slot, 100)  # 一次获取100个key
        all_keys.extend(keys_in_slot)
    return all_keys
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值