redis复制机制

文章目录

  • 1. Redis 复制机制
  • 2. 基本命令
  • 3. 修改配置文件
  • 4. 代码案例
    • 4.1 一主二仆
    • 4.2 薪火相传
    • 4.3 反客为主
  • 5. Redis复制工作流程
  • 6. Redis 复制的缺点

1. Redis 复制机制


概念 :

在这里插入图片描述


Redis 复制机制 能干的活 :

  1. 读写分离 : 写 就找 主机 master , 读就找从机 Slave
  2. 容灾恢复 : 主机突然宕机 , 我们可以通过从机将数据恢复
  3. 数据备份
  4. 水平扩容支撑高并发

2. 基本命令


这里我们想要玩转 Redis复制 ,需要配置从机 .


注意 :只需要配置 从库 ,不需要配置主库


配置两台从机大致图 :

在这里插入图片描述


关于如何配置 等下代码案例的时候会一步一步的配置 ,这里先来看看 Redis 复制的基本命令.

在这里插入图片描述

3. 修改配置文件


说明 :

在这里插入图片描述


配置文件


图一 :

在这里插入图片描述


图二 :

在这里插入图片描述


图三 :

在这里插入图片描述


注意 : 上面拷贝的 6380 ,和 6381 对应的日志文件并没有修改 ,下面来修改一下.

在这里插入图片描述


另外 : 端口号也需要更改一下

在这里插入图片描述

4. 代码案例

4.1 一主二仆

启动 三台机器 :

在这里插入图片描述

启动完后 ,我们可以 来看看 主机 和 从机的 日志文件

在这里插入图片描述

日志看完 , 就来 使用我们的第一个命令 info replication 查看 复制节点的主从关系和配置信息.

在这里插入图片描述


下面我们来 在主机上 创建几个数据 看看 从机是否能够获取到创建的数据

在这里插入图片描述


到此 一主二仆 相关的配置与操作就完成了,下面我们来看几个问题 .


1. 从机可以执行写命令吗 ?


答案 : 不能

在这里插入图片描述


2.从机切入点问题

在这里插入图片描述


3. 主机 shutdown 后 , 从机会上位吗 ?


答案 : 从机不会上文 ,而是原地待命,等待主机重启归来

在这里插入图片描述


图二 :

在这里插入图片描述



看完这三个问题, 下面我们来看第二个命令 : slaveof


slaveof 主机 IP 主机端口号 : 这个命令是 用来设置 从属关系的 ,


上面我们是通过 配置文件中的 replicaof 固定写死了 要跟随的主机 , 下面我们就通过 slaveof 来指定要跟随的主机 .


注意 : 通过 slaveof 配置的从属关系 ,会在宕机 或某种意外 使 从机 与 主机 master 断开之后 ,自动取消从属关系 . 如果要继续维持 从属关系 需要 在执行一遍 slaveof 命令.

图一 :

在这里插入图片描述


图二 :

在这里插入图片描述


图三 :

在这里插入图片描述

4.2 薪火相传


啥是薪火相传呢 ?


图一 :

在这里插入图片描述

图二 :

在这里插入图片描述


图三 :

在这里插入图片描述


下面提出一个问题 : slave1 相当于 slave2 的 主机, 那么 slave 1 是能够进行写操作呢 ?

在这里插入图片描述

4.3 反客为主


简单一句话 就是 :老子不干了 , 我不当小弟了, 我要当大哥 .


通过 slaveof no one 命令 , 使当前数据库停止与其他数据库的同步, 转变为 主机 master.

在这里插入图片描述

5. Redis复制工作流程


在这里插入图片描述

6. Redis 复制的缺点

  1. 复制延时 , 信号衰弱

    在这里插入图片描述


2. master 挂了 ,会导致无法进行写操作 . 从机 slave 只能进行读操作 , master 挂了之后 会一直等待 主机重新上线.


针对 从机 在 主机挂了之后 ,一直等待 主机上线 这个 行为 ,就引出我们接下来要学习的 Redis 哨兵 .

简单说一下为啥需要哨兵 , 因为 主机挂了,我们不可能一直让 从机等待 ,所以需要在从机中选一个机器让它当主机,但是从机在默认情况

下是不会自动重新选一个 主机的 ,此时就需要一个 人 来从 从机中选出一个 主机 选一个老大, 所以 哨兵就应运而生.

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

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

相关文章

数据库索引及优化

索引 1.索引简介 1.1 概念 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。索引的本质:索引是数据结构。 注:在数据之外,数据库系统还维护着满足特定查找算法的数据结构&…

I/O设备详解

目录 一. 什么是IO设备 二. IO设备分类 2.1按照使用特性分类 2.2按照传输速率分配 2.3按照信息交换的单位分类 三. IO设备的构成 3.1 IO的机械部件 3.2 IO的电子部件 3.2.1设备控制器(IO控制器功能简介) 3.2.2设备控制器(IO控制器&…

企业级信息系统开发讲课笔记4.9 Thymeleaf模板引擎

文章目录 零、学习目标一、Spring Boot支持的视图技术二、Thymeleaf基本语法1、Thymeleaf常用标签2、Thymeleaf主要语法3、Thymeleaf内置对象4、Thymeleaf模板基本配置 三、Spring Boot整合Thymeleaf1、创建Spring Boot项目ThymeleafDemo2、在全局配置文件里配置Thymeleaf属性3…

12. AbstractQueuedSynchronizer之AQS

12.1 前置知识 ● 公平锁和非公平锁 ○ 公平锁:锁被释放以后,先申请的线程先得到锁。性能较差一些,因为公平锁为了保证时间上的绝对顺序,上下文切换更频繁 ○ 非公平锁:锁被释放以后,后申请的线程可能会先获…

有效延缓痴呆症:延世大学发现梯度提升机模型能准确预测 BPSD 亚综合征

内容一览:随着人口老龄化程度不断加剧,痴呆症已经成为公共健康问题。目前医学界治疗该病还只能通过药物缓解,尚未发现治愈的有效方法,因此,预防痴呆症尤为紧迫。在这一背景下,延世大学的研究人员开发了多个…

复习之linux虚拟化的介绍

一、虚拟化客户端及工具的安装 1.在虚拟机westos中列出: ps:虚拟机中安装虚拟机无意义,这里指是做实验看清楚虚拟机的创建! # dnf group list --hidden irtualization Client :虚拟化客户端 Virtualization Tools &…

在CRM系统中如何获取联系人的信息?

CRM客户管理系统可以有效应对企业对联系人管理的需求,帮助销售人员随时随地查阅、记录、修改联系人,为业务开展做好铺垫。CRM中联系人是什么?如何获取联系人信息? 1.CRM中联系人是什么? CRM系统联系人指的是沟通对象…

低代码开发重要工具:jvs-form(表单引擎)2.1.7功能清单及新增功能介绍

jvs-form 2.1.7 版本功能清单 在低代码开发平台中,表单是用于收集和编辑数据的页面。它通常用于创建、更新或查看单个记录的详细信息。 jvs-form是jvs快速开发平台的8大引擎的其中之一,它的特点: 与动态模型联动,支持动态的调整…

基于深度强化学习的目标驱动型视觉导航泛化模型

深度强化学习在目标驱动型视觉导航的泛化 参考论文《Towards Generalization in Target-Driven Visual Navigation by Using Deep Reinforcement Learning》 文章目录 深度强化学习在目标驱动型视觉导航的泛化1. 目标驱动型视觉导航问题2. 创新点和解决的问题2.1 创新点2.2 解…

英语中-后置定语

一般说来,形容词放在所修饰名词的前面。单个的现在分词、过去分词以及动名词作定语,都是放在所修饰名词(或代词)的前面。这些称为前置定语。 例如: a red flower/ an interesting story,这里red, interes…

Collection接口详细介绍(上)

前言: 本篇文章主要讲解Java中的Collection接口以及相关实现类的知识。该专栏比较适合刚入坑Java的小白以及准备秋招的大佬阅读。 如果文章有什么需要改进的地方欢迎大佬提出,对大佬有帮助希望可以支持下哦~ 小威在此先感谢各位小伙伴儿了&#x1f601…

电子蜡烛灯单片机开发方案

LED蜡烛灯可以像真正的蜡烛一样发出舒适的闪烁光,具有仿真蜡烛效果,适合在一些聚会或庆祝活动中使用。宇凡微推出的低成本LED蜡烛灯IC方案,根据不同电子蜡烛灯方案,主控芯片推荐使用YF单片机。 LED蜡烛灯是有孩子的家庭很好蜡烛替…

Vue单文件组件

单文件组件 单文件组件是在开发中用的比较多的,它的后缀都是.vue结尾的 既然是.vue结尾,那么直接给浏览器是不能运行的,.vue文件是vue团队打造的特殊文件,想让.vue文件让浏览器识别并且运行,需要对它进行处理加工成纯…

07_scrapy的应用——获取电影数据(通过excel保存静态页面scrapy爬虫数据的模板/通过数据库保存)

0、前言: 一般我们自己创建的一些python项目,我们都需要创建虚拟环境,其中会下载很多包,也叫做依赖。但是我们在给他人分享我们的项目时,不能把虚拟环境打包发送给别人,因为每个人电脑系统不同,我们可以把依赖导出为依赖清单,然后别人有了我们的依赖清单,就可以用一条…

Docker consul的容器

consul服务更新和服务发现 什么是服务注册与发现 服务注册与发现是微服务架构中不可或缺的重要组件。起初服务都是单节点的,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问。直到后来出现了多个节点的分布式架构&…

优维低代码实践:模板

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。…