Redis与分布式-哨兵模式

接上文 Redis与分布式-主从复制

1.哨兵模式

在这里插入图片描述
在这里插入图片描述
启动一个哨兵,只需要修改配置文件即可,

sentinel monitor lbwnb 1247.0.0.1 6001 1

先将所有服务关闭,然后修改配置文件,redis Master,redis Slave,redis Slave 2都是同样的修改方式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
启动哨兵在这里插入图片描述
先关闭哨兵服务,开启6001、6002、6003服务后再开启哨兵服务在这里插入图片描述
在这里插入图片描述在这里插入图片描述
启动哨兵后,会自动监控主节点,还会显示哪些节点是作为从节点存在的。
26505461aba6fe32628ed934d.png)

此时把主节点6001关闭,查看会发生什么。
在这里插入图片描述
此时再启动6001服务
在这里插入图片描述
此时6001和6001同步,6001会从6003同步数据
在这里插入图片描述
这里哨兵把6003作为了新的主节点,而不是6002,是遵循了以下规则:
在这里插入图片描述
但是如果哨兵挂了可能会影响。此时可配置多个哨兵,只需要将哨兵的配置复制以下,然后修改端口,这样就可以启动多个哨兵。
启动3个哨兵(一主二从),把最后一个值改为2:
先把6001,6002,6003给关闭。然后复制三个redis sentinel
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
先启动6001,6002,6003三个服务,然后启动上边3个修改后的哨兵

# 启动服务
redis-server.exe redis.windows.conf

在这里插入图片描述

# 启动哨兵
redis-server.exe redis.windows.conf --sentinel

在这里插入图片描述

此时6003为6002和6001的主节点。此时将6003主节点进行关闭,查看状态。
在这里插入图片描述
针对哨兵重新选举新的节点后,java中的redis怎么感知?如下:
先导入依赖

    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>4.2.1</version>
    </dependency>

在这里插入图片描述
在这里插入图片描述
java操作redis的sentinel进行写入,能正常读取
在这里插入图片描述
从redis客户端读取java写入的值,也正常读取
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值