当前位置: 首页 > news >正文

面试总结-Redis篇章(十)——Redis哨兵模式、集群脑裂

Redis哨兵模式、集群脑裂

  • 哨兵模式
    • 哨兵的作用
    • 服务状态监控
  • Redis集群(哨兵模式)脑裂
      • 解决办法

哨兵模式

为了保证Redis的高可用,Redis提供了哨兵模式

哨兵的作用

在这里插入图片描述

服务状态监控

在这里插入图片描述

Redis集群(哨兵模式)脑裂

在这里插入图片描述
假设由于网络原因,主节点master和哨兵都处于不同的分区,哨兵只能检测从节点,就是下面这种情况,哨兵在右侧从节点中选出一个节点作为master。

在这里插入图片描述
但是老的mster还存在,还没有挂掉,这时候客户端写入数据依然是给旧的master写数据,这时候就是两个master,就像大脑分裂了一样。新的master是接收不到客户端传入的数据的。这时候如果网络回复了,如下图

在这里插入图片描述
这时候,哨兵会将旧的master强制降为slave,这时候slave会从新的master中去同步数据,会把自己的数据给清空,但是在之前的脑裂过程中,客户端写入的数据就丢失了,这就是脑裂问题出现后,导致数据丢失的问题。

解决办法

修改redis中两个配置参数

min-replicas-to-write 1  // 表示最少的salve 节点为1个
min-replicas-max-lag 5  // 表示数据复制和同步的延迟不能超过5秒

上述的意思是,master连接的salve最少为一个,而且数据复制和同步的延迟不能超过5秒,如果达不到这个要求,那么就拒绝客户端的请求,这样可以避免数据的丢失

在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/110684.html

相关文章:

  • el-table那些事
  • kubernetes(一)
  • 计算机网络(6) --- https协议
  • (三)Node.js - 模块化
  • 502 bad gateway报错
  • Flink学习教程
  • flutter开发实战-实现音效soundpool播放音频及控制播放暂停停止设置音量
  • Sequence 2023牛客暑期多校训练营6 E
  • 【ASP.NET MVC】使用动软(二)(10)
  • STM32入门学习之独立看门狗(IWDG)
  • 抖音seo矩阵系统源码搭建开发详解
  • 2685. 统计完全连通分量的数量;2718. 查询后矩阵的和;1600. 王位继承顺序
  • SpringBoot统一功能处理(AOP思想实现)(统一用户登录权限验证 / 异常处理 / 数据格式返回)
  • git stash 用法
  • 生鲜蔬果小程序的完整教程
  • De Bruijin序列与魔术(二)——魔术《De Bruijin序列》
  • ARCGIS地理配准出现的问题
  • redis原理 6:小道消息 —— PubSub
  • Android Studio 的Gradle版本修改
  • Redis的部分面试题
  • 单通道 6GSPS 16位采样DAC子卡模块--【资料下载】
  • Python 文件操作详解
  • 【Rust 基础篇】Rust Never类型:表示不会返回的类型
  • error “Component name “*****“ should always be multi-word”解决方案
  • 前后端开发的区别是什么?
  • 小白电脑装机(自用)
  • Quic协议 0-RTT
  • 在排序数组中查找元素的第一个和最后一个位置——力扣34
  • python列表处理方法
  • 【Java】快速入门JVM