Redis哨兵原理,我忍你很久了!(2)

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis哨兵原理,我忍你很久了!

启动一个哨兵redis-sentinel 26379-sentinel.conf


image.png


连接26379哨兵,主要是最后一行,监控的主节点名为mymaster,状态正常,从节点有俩个,哨兵数量为1个


image.png


在来查看一下26379的哨兵配置信息,这个时候已经改动了


image.png


在启动一个26380的哨兵,redis-sentinel 26380-sentinel.conf,这里注意一下最后一行多了一条信息,这个id就是我们26379配置文件新增的id


image.png


然后我们来到哨兵26379的客户端,同样也是新增的26380哨兵的id


image.png


这个时候我们在查看一下26379哨兵的配置文件,第一次查看配置文件是没有配置26380哨兵的,第二次查看时配置了26380哨兵后添加的信息。


image.png


最后我们需要把哨兵客户端3启动起来,端口号为26381。启动起来之后,我们的配置信息和服务端的信息也会改动,添加哨兵26380有的信息,哨兵26381也会有。


image.png


直到这里我们对哨兵的配置就结束了,接下来我们把主节点master给宕掉


等待30秒后我们来到26379哨兵的客户端,这里新增了一些信息,那么这些信息都做了什么呢!让我们细细道来。


image.png


这里边的信息我们先需要知道几个


  • +sdown :这个信息后是指三个哨兵里边有一个认为主节点宕机了
  • +odown:这个信息是指其他俩个哨兵去连接了一下主节点,发现确实是主节点宕机了
  • 然后发起了一轮投票,这里咔咔使用的是redis4.0,版本之间这块信息有点差异
  • +switch-master mymaster 127.0.0.1 6379 127.0.0.1 6380:直到这里是哨兵发起投票的结果,推选端口为6380的redis为主节点
  • +slave slave 127.0.0.1:6381 127.0.0.1 6381 @ mymaster 127.0.0.1 6380:这里就把端口为6381与6379和新的主节点6380做了一个连接
  • +sdown slave 127.0.0.1:6379 127.0.0.1 6379 @ mymaster 127.0.0.1 6380:最后一句是端口为6379的还是没有上线,于是给踢下线

当我们在重新把6379的redis服务器上线后,就可以看到哨兵服务端响应了俩句。一句是去除6379的下线。最后一句就是重连6379到新的主节点上。


image.png


image.png


这个时候主节点就是6380了,在6380的redis客户端设置值,检测主从复制是否正常工作。


在新的主节点6380添加list类型


image.png


在6379和6381获取这个值,至此呢!我们的哨兵模式就配置完成了。


image.png



相关文章
|
7月前
|
消息中间件 缓存 NoSQL
Redis原理—5.性能和使用总结
本文详细探讨了Redis的阻塞原因、性能优化、缓存相关问题及数据库与缓存的一致性问题。同时还列举了不同缓存操作方案下的并发情况,帮助读者理解并选择合适的缓存管理策略。最终得出结论,在实际应用中应尽量采用“先更新数据库再删除缓存”的方案,并结合异步重试机制来保证数据的一致性和系统的高性能。
Redis原理—5.性能和使用总结
|
7月前
|
NoSQL 算法 安全
Redis原理—1.Redis数据结构
本文介绍了Redis 的主要数据结构及应用。
Redis原理—1.Redis数据结构
|
7月前
|
缓存 NoSQL Redis
Redis原理—2.单机数据库的实现
本文概述了Redis数据库的核心结构和操作机制。
Redis原理—2.单机数据库的实现
|
7月前
|
存储 缓存 NoSQL
Redis原理—4.核心原理摘要
Redis 是一个基于内存的高性能NoSQL数据库,支持分布式集群和持久化。其网络通信模型采用多路复用监听与文件事件机制,通过单线程串行化处理大量并发请求,确保高效运行。本文主要简单介绍了 Redis 的核心特性。
|
7月前
|
缓存 NoSQL Redis
Redis原理—3.复制、哨兵和集群
详细介绍了Redis的复制原理、哨兵原理和集群原理。
|
11月前
|
监控 NoSQL 算法
Redis Sentinel(哨兵)详解
Redis Sentinel(哨兵)详解
448 4
|
11月前
|
消息中间件 NoSQL Kafka
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
690 0
|
4月前
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
4天前
|
存储 缓存 NoSQL
Redis专题-实战篇二-商户查询缓存
本文介绍了缓存的基本概念、应用场景及实现方式,涵盖Redis缓存设计、缓存更新策略、缓存穿透问题及其解决方案。重点讲解了缓存空对象与布隆过滤器的使用,并通过代码示例演示了商铺查询的缓存优化实践。
57 1
Redis专题-实战篇二-商户查询缓存