主从+哨兵

from redis.sentinel import Sentinel

if __name__ == '__main__':
# 哨兵监听的别名,这个就是你redis配置中的名字
server_name = "mymaster" # 设置哨兵组的IP和PORT
sentinel_list = [
("192.168.2.6", 26379),
("192.168.2.6", 26380),
("192.168.2.6", 26381),
]
# 初始化哨兵对象,并传递哨兵组的IP和端口信息
sentinel = Sentinel(sentinel_list) # print(sentinel.discover_slaves(server_name))
# print(sentinel.discover_master(server_name)) # 从哨兵监视中获取master主库
master_client = sentinel.master_for(server_name, decode_responses=True) # 从哨兵监视中获取slave从库
slave_client = sentinel.slave_for(server_name, decode_responses=True) # 主库中设置值
master_client.set("username", "wangwu") # 从库中获取值
print(slave_client.get("username"))

集群

from redis.cluster import ClusterNode

if __name__ == '__main__':
from redis import RedisCluster # nodes = [
# {"host": "192.168.2.6", "port": 6382},
# {"host": "192.168.2.6", "port": 6383},
# {"host": "192.168.2.6", "port": 6384},
# {"host": "192.168.2.6", "port": 6385},
# ] """
S: 1bf7272d2b929d7a7d5080bfabfcdc1e2dee5dde 192.168.2.6:6379
S: 2553f886f985b64357d70cb581cb90206fd356e0 192.168.2.6:6380
S: 82170a4b12bb428469ee23f36b6c3b9aea14e65a 192.168.2.6:6381
M: fd85e7db8bcb89dd572bda08d832817515d74dc3 192.168.2.6:6382
M: 533580d3b0f60fe474d60439fff61536ba57b90e 192.168.2.6:6383
M: cbf4151ce9ca40fa8eea60c6242d5020c31829ce 192.168.2.6:6384
M: 6c220055c3c79f45443e388056b2ede17879d48a 192.168.2.6:6385
""" # 可以将全部节点的信息都给定一个列表中
# 现在新版要求传的是ClusterNode对象了
nodes = [
ClusterNode("192.168.2.6", port=6382),
ClusterNode("192.168.2.6", port=6383),
ClusterNode("192.168.2.6", port=6384),
ClusterNode("192.168.2.6", port=6385),
ClusterNode("192.168.2.6", port=6379),
ClusterNode("192.168.2.6", port=6380),
ClusterNode("192.168.2.6", port=6381),
] # 可以给定全部集群中的机器IP信息
cluster = RedisCluster(startup_nodes=nodes, decode_responses=True) # 也可以随便指定一个节点(不管主从都可以,它会自动定位)
cluster = RedisCluster(host="192.168.2.6",port=6379, decode_responses=True)
cluster.set("test001", "哈哈哈哈") # print(cluster.get("test001").decode())
print(cluster.get("test001"))

python操作redis集群、redis主从+哨兵的更多相关文章

  1. 如何搭建Redis集群(主从+哨兵)

    一.什么是redis主从复制? 主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器.前者称为主节点(master),后者称为从节点(slave),数据的复制是单向的,只能由主节点 ...

  2. Redis集群--Redis集群之哨兵模式

    echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!!! 搭建R ...

  3. Redis集群的主从切换研究

    目录 目录 1 1. 前言 1 2. slave发起选举 2 3. master响应选举 5 4. 选举示例 5 5. 哈希槽传播方式 6 6. 一次主从切换记录1 6 6.1. 相关参数 6 6.2 ...

  4. 基于Docker搭建Redis集群(主从集群)

    基于Docker搭建Redis集群(主从集群)   最近陆陆续续有不少园友加我好友咨询 redis 集群搭建的问题,我觉得一定是之前写的这篇 <基于Docker的Redis集群搭建> 文章 ...

  5. redis集群(主从配置)

    市面上太多kv的缓存,最常用的就属memcache了,但是memcache存在单点问题,不过小日本有复制版本,但是使用的人比较少,redis的出现让kv内存存储的想法成为现实.今天主要内容便是redi ...

  6. 5分钟实现用docker搭建Redis集群模式和哨兵模式

    如果让你为开发.测试环境分别搭一套哨兵和集群模式的redis,你最快需要多久,或许你需要一天?2小时?事实是可以更短. 是的,你已经猜到了,用docker部署,真的只需要十几分钟. 一.准备工作 拉取 ...

  7. 认识Redis集群——Redis Cluster

    前言 Redis集群分三种模式:主从模式.sentinel模式.Redis Cluster.之前没有好好的全面理解Redis集群,特别是Redis Cluster,以为这就是redis集群的英文表达啊 ...

  8. phpredis Redis集群 Redis Cluster

    官方url: https://github.com/phpredis/phpredis/blob/develop/cluster.markdown#readme 2017年10月29日20:44:25 ...

  9. springboot+shiro+redis(集群redis版)整合教程

    相关教程: 1. springboot+shiro整合教程 2. springboot+shiro+redis(单机redis版)整合教程 3.springboot+shiro+redis(单机red ...

  10. Redis 集群_主从配置_哨兵模式

    首先:slaveof 可以在[从]服务器启动一个service服务,直接将[从]服务器定义为[从Redis] redis-server --slaveof <master-ip> < ...

随机推荐

  1. 我的 Kafka 旅程 - 基于账号密码的 SASL+PLAIN 认证授权 · 配置 · 创建账号 · 用户授权 · .NET接入

    本文基于 Kafka 3.0+ 的 KRaft 模式来阐述 默认的 Kafka 不受认证约束,可不用账号就可以连接到服务,也就是默认的 PLAIN 方式,不需要认证:配置了 SASL 认证之后,连接K ...

  2. QA||TypeError: ‘module‘ object is not callable报错怎么debugIHRM接口自动化测试

    unittest.py生成测试报告时执行报错:TypeError: 'module' object is not callable 代码如下 原因:结合pycharm自动标注和报错信息,分析出应该是H ...

  3. YShow性能测试平台搭建

    ShowSlow安装 ShowSlow是一个YSlow性能数据收集平台,用于将收集的性能数据 ShowSlow是用php实现的,所以我们需要搭建一台服务器来接收YSlow数据 我搭建的环境是:ubun ...

  4. pygame 入门实例教程 1 - 复古方块赛车游戏

    作者自我介绍:大爽歌, b站小UP主 ,直播编程+红警三 ,python1对1辅导老师 . 本教程步骤明确,过程清晰简明,最终代码量250行上下,适合学习pygame的新手. 项目代码已上传到我的gi ...

  5. HTML一键打包EXE工具1.9.9发布 (包含最新版下载地址)

    HTML一键打包EXE工具(HTML封装EXE,桌件)是一款能将任意HTML项目(网址)打包为单个EXE文件的工具,无需依赖浏览器和服务器,直接双击即可运行.该工具支持多种HTML项目类型,包括KRP ...

  6. KRPano动态热点专用素材图50多个,加动态热点使用方法

    KRPano动态热点专用素材是一种特定形式的序列图,该序列图要求帧的水平和垂直的具体位置必须准确,否则图的动作将会出现错乱,KRPano不支持动态图.目前网上比较匮乏动态热点素材,在此亲手整理制作了5 ...

  7. NebulaGraph实战:3-信息抽取构建知识图谱

      自动信息抽取发展了几十年,虽然模型很多,但是泛化能力很难用满意来形容,直到LLM的诞生.虽然最终信息抽取质量部分还是需要专家审核,但是已经极大的提高了信息抽取的效率.因为传统方法需要大量时间来完成 ...

  8. JAVA实现单链表修改和删除数据节点

    JAVA实现单链表修改和删除数据节点 一.修改单链表中的一个节点 ①实现思路 因为带头节点的链表中头节点的next域不能发生改变(始终指向单链表的头节点),否则将找不到该链表.所以我们需要先找一个辅助 ...

  9. 浅析依赖属性(DependencyProperty)

    在WPF中,引入了依赖属性这个概念,提到依赖属性时通常都会说依赖属性能节省实例对内存的开销.此外依赖属性还有两大优势. 支持多属性值,依赖属性系统可以储存多个值,配合Expression.Style. ...

  10. std::copy与std::back_inserter引发的惨案

    #include <iostream> #include <vector> #include <numeric> #include <sstream> ...