微服务框架 SpringCloud微服务架构 分布式缓存 44 Redis 分片集群 44.4 故障转移

news2025/2/21 21:59:38

微服务框架

【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】

分布式缓存

文章目录

      • 微服务框架
      • 分布式缓存
      • 44 Redis 分片集群
        • 44.4 故障转移
          • 44.4.1 故障转移
          • 44.4.2 数据迁移

44 Redis 分片集群

44.4 故障转移

44.4.1 故障转移

当集群中有一个master宕机会发生什么呢?

先使用一个命令监控集群的状态 watch redis-cli -p 7001 cluster nodes

在这里插入图片描述

打开一个新的窗口

在这里插入图片描述

下面进行操作,上面看监控

让7002 宕机

在这里插入图片描述

这是停之前

执行命令 redis-cli -p 7002 shutdown

在这里插入图片描述

在这里插入图片描述

而且可以看到 笔者这里是8001 升为 了主节点

现在再次启动 7002 redis-server 7002/redis.conf

在这里插入图片描述

7002 就真的变小弟了

  1. 首先是该实例与其它实例失去连接

  2. 然后是疑似宕机

  3. 最后是确定下线,自动提升一个slave为新的master:

意思就是,不需要哨兵,集群可以自动完成故障的主从切换

44.4.2 数据迁移

利用cluster failover命令可以手动让集群中的某个master宕机,切换到执行cluster failover命令的这个slave节点,实现无感知的数据迁移。

其流程如下:

在这里插入图片描述

手动的Failover支持三种不同模式:

  • 缺省:默认的流程,如图1~6歩
  • force:省略了对offset的一致性校验
  • takeover:直接执行第5歩,忽略数据一致性、忽略master状态和其它master的意见【最暴力】

【举个栗子】

【案例】在7002这个slave节点执行手动故障转移,重新夺回master地位【我真的会笑】

步骤如下:

  1. 利用redis-cli连接7002这个节点

在这里插入图片描述

  1. 执行cluster failover命令

在这里插入图片描述

执行前,7002 还是一个 slave

我直接回车

在这里插入图片描述

好家伙,8001 瞬间变 小弟了【这就是手动故障转移】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/87825.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]Python计算机毕业设计高等数学在线学习平台Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

零基础怎么学Python?要学多久?

首发内容,希望从各个角度为大家解答Python的学习方向,能够帮助更多入门的同学们。 一、为什么学Python 是因为铺天盖地的广告还是要转行,有本职工作希望自动化办公还是爱好? (1)有本职工作觉得应该学Pyt…

你一定要了解的NAT工作原理

大家好,我是技福的小咖老师。 前两天给大家分享了NAT策略问题的23个问题,有朋友私信我,想再普及一下NAT基础知识。今天咱们就来复习下NAT的工作原理。 随着网络应用的增多,IPv4地址枯竭的问题越来越严重。尽管IPv6可以从根本上解…

mybatis06:Mybatis注解开发

目录 1 MyBatis的常用注解 1.1注解完成基本的crud 例题演示 1.2mybatis的注解复杂查询映射开发 例题演示 1 MyBatis的常用注解 这几年来注解开发越来越流行,Mybatist也可以使用注解开发方式,这样我们就可以减少编写Mapper映射文件了。我们先用绕一些基…

mongoDB使用总结

windows安装 zip压缩包方式安装 下载 注意:因为现在最新版的mongodb不兼容win7,对windows系统的最低要求是win10。所以win7系统要安装mongodb数据库必须考虑使用旧版安装。 Download MongoDB Community Server | MongoDB 解压 将压缩包解压放在指定位置&#x…

世界杯,来一起“唠嗑”呀!

自人类诞生起,娱乐与社交便是融入群体、参与群体行动的“必需品”。娱乐与社交的结合使得人们更加容易找寻同类、拉近同类关系,而四年一届的世界杯正是娱乐与社交的完美融合体。作为全球最富影响力的体育赛事之一,每一届世界杯都影响着全球几…

thinkphp中 Db::query()和Db::name()区别 $db->query($sql); ->相当于访问类里面的方法

Db::query()是原生sql查询。 例如 Db::query(“select * from cmf_user where id9”); Db::name()是thinkphp基于原生sql二次封装的sql查询。 例如Db::name(‘user’)->where(‘id’,9)->find(); db是一个实例化好的数据库类,query是这个类里面的一个方法&am…

PMP每日一练 | 考试不迷路-12.14(包含敏捷+多选)

被延期考试的宝子 一定要坚持刷题 每日5道PMP习题助大家上岸PMP! ​题目1-2: ​1.一位主要相关方要求将每日站立会议的持续时间人15分钟增加到1小时。Scrum主管应该做什么? ( ) A.接受建议并建议团队更改会议时间表 B.安排与产品负责人和团队…

内网穿透用什么软件好?本地设置内网端口映射到外网访问

我们经常听到有人说在用内网穿透工具,那么内网穿透工具有什么作用呢?内网穿透工具的作用是将本地内网服务器和应用提供到互联网上连接访问,可以解决在无公网IP条件下跨网互通互连问题。比如在家远程办公,访问公司内部办公OA服务器…

Socket.IO与Atmosphere比较

最近接到一个新需求,前后端保持状态连接,实现动态刷新的效果。那第一个想到的就是websocket,但是websocket我们知道有一个缺陷就是兼容性比较差(如下图红色表示不兼容的浏览器版本),受网络限制比较大。 我…

常考vue面试题(附答案)

Vue生命周期钩子是如何实现的 vue的生命周期钩子就是回调函数而已,当创建组件实例的过程中会调用对应的钩子方法内部会对钩子函数进行处理,将钩子函数维护成数组的形式 Vue 的生命周期钩子核心实现是利用发布订阅模式先把用户传入的的生命周期钩子订阅好…

2022年山东建筑安全员考试真题题库及答案

百分百题库提供建筑安全员考试试题、安全员证考试真题、安全员证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 142.施工现场内的()等机械设备,以及钢脚手架和正在施工的在建工程等的金属结构,当在相邻建筑物、构筑物等设施防雷装置接闪…

C++ Reference: Standard C++ Library reference: Containers: map: map: clear

C官网参考链接&#xff1a;https://cplusplus.com/reference/map/map/clear/ 公有成员函数 <map> std::map::clear C98 void clear(); C11 void clear() noexcept;清除内容 从map容器中删除所有元素&#xff08;已销毁&#xff09;&#xff0c;使容器的size为0。 形参 …

【Kafka】Mac下安装与使用,SpringBoot整合案例

【Kafka】Mac下安装与使用&#xff0c;SpringBoot整合案例&#xff08;一&#xff09;下载安装&#xff08;二&#xff09;测试用例【1】启动zookeeper【2】启动kafka【3】创建Topic【4】查看Topic【5】删除Topic【6】生产/消费数据【7】查看消费组【8】查看消费组详情&#xf…

太卷了,这份Java架构师晋升指南首次公开,GitHub下载量已破百万

最近和各位小伙伴儿私下聊的比较多&#xff0c;各个阶段的朋友都有&#xff1b;因为大环境的内卷&#xff0c;导致大家在求学、求职、提升自己的各个方面都多多少少有些迷茫焦虑&#xff1b; 这些其实是一个非常普遍且正常的现象&#xff0c;会焦虑的人&#xff0c;往往都是对…

智云通CRM:那些令你无法控制的销售局面(二)

1、向并不合适的潜在客户进行销售 选对战场是分配资源的关键。对于那些销售工作很复杂的业务员来说&#xff0c;他们当中的大多数一年最多会有10-20次的机会&#xff0c;可是有些时候&#xff0c;最后他们手里的机会也就剩下一个了。挑选不合适的潜在客户会消耗许多资源。 2、…

家电供应链再遭新风险,SCM供应链管理系统加快业务流转提升企业内控水平

在疫情不断反复的影响下&#xff0c;刚刚进入复苏阶段的家电企业再次面临新一轮危机。2022年一季度&#xff0c;中国家电实现零售额1430亿元&#xff0c;同比下降11.1%&#xff1b;线上家电零售市场下降7.5%。海关数据显示&#xff0c;前两个月&#xff0c;家电产品海外出口规模…

[附源码]计算机毕业设计的校园报修平台Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; Springboot mybatis MavenVue等等组成&#xff0c;B/S模式…

基于Java实现(Web)考勤管理系统【100010040】

考勤系统设计文档 一、用户需求 1.1 目标 规范员工的上下班、请假、外出工作等行为方便计算员工的薪金方便管理各种带薪假期共享员工的请假及外出工作的信息 1.2 涉众 序号涉众待解决的问题1普通员工方便的查看自己的请假及外出记录2行政部员工与财务部的“接口”尽量简单…

Revit中模型文字的放置和族库工具介绍

一、Revit中模型文字的放置 模型文字一般放置在构件表面&#xff0c;因此我们在放置模型文字的时候一定要注意先设置工作平面这样的话会让模型文字更容易放凰而且定位较准。 1.工作平面的设定 2.拾取工作平面&#xff0c;将鼠标放在要拾取面的地方&#xff0c;如果不能一下子就…