IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Redis主从架构 -> 正文阅读

[大数据]Redis主从架构

1、什么是Redis主从架构

Redis主从架构意思就是,主节点下面挂一些从节点,主节点主要用来读写数据,从节点主要用来备份数据,当然也可以读一些数据,大体结构如下图所示:

在这里插入图片描述

2、Redis主从架构搭建步骤

1、复制一份redis.conf文件。


2、修改相关的配置。
2.1、对外提供的端口号:

port 6380

2.2、这个文件是把pid进程号写入pidfile的配置文件,这里可以指定这个文件的路径,文件将自动生成。

pidfile /var/run/redis_6380.pid

2.3、这个Redis实例的日志记录文件名称。

logfile "6380.log" 

2.4、这个目录就是比如说像上面的log文件、持久化文件等没有具体指定路径的一些过程文件都会放在这个路径下面。

dir /usr/local/redis‐5.0.3/data/6380

3、主从复制的主要配置代码
3.1、第一个命令,表示从节点的数据是从哪个主节点复制过来的,Redis 5.0之前使用slaveof

replicaof 192.168.0.60 6379

3.2、第二个命令,表示从节点的数据是只读的

replica‐read‐only yes

4、启动从节点

./redis-server redis-6380.conf

5、连接从节点

redis‐cli ‐p 6380

6、测试在6379实例上写数据,6380实例是否能及时同步新修改数据,同步成功。

在这里插入图片描述

遇到的问题:

1、从节点无法复制主节点的数据
注释掉主节点配置文件中的 bind 127.0.0.1,如下图所示:
原因:这个 bind 配置的意思是绑定的自己机器网卡的ip,如果有多个网卡可以配置多个ip,代表允许客户端可以通过哪些ip来访问,如果只配置了 127.0.0.1,那么从节点的 replicaof 配置就只能配置 127.0.0.1 来访问了,如果从节点布置在其它机器上,就访问不了了。

在这里插入图片描述

3、Redis主从节点复制数据的过程

3.1、数据全量复制

数据全量复制的意思是比如创建了一个新的从节点,从主节点将数据复制过去的流程就是下面这个。
1、先跟master建立socket长连接,psync命令同步数据。
2、主节点生成rdb文件过程。
2.1、收到psync命令执行bgsave生成一个rdb快照文件。
2.2、master在2.1生成rdb文件的时候,这个过程中进行的一些修改的操作都在这里面放着。
3、发送rdb数据。
4、清空从节点的数据并加载刚主节点生成的rdb数据。
5、send buffer,把备份过程中的数据传递过来。
6、将buffer的数据都写到从节点中。
7、后续的话,就主节点执行一条命令,主节点就通知从节点也执行一条命令。

在这里插入图片描述

3.2、数据部分复制

数据部分复制的请情况出现在从节点万一宕机了一段时间,过了一会我们又启动了从节点,这个时候我们希望同步的数据是宕机这段时间的数据,而不是全量的数据,所以就出现了数据部分复制。
1、断开连接,因为这个链接可以已经不能用,需要重新断开再次连接。
2、从节点宕机的这一段时间的数据操作都在这里面放着。
3、重新建立socket长连接。
4、发送一个psync(offest),offset是上次同步数据坐标的偏移量。
5、如果slave发送的offset在repl backlog中,则发送offset之后的数据给从节点,如果不在,则发送全量数据给从节点。
6、后续的话,就主节点执行一条命令,主节点就通知从节点也执行一条命令。

在这里插入图片描述

这里的repl backlog缓冲区的内存是可以在配置文件中配置的,如下图所示:
repl-backlog-size 1mb 默认是1mb

在这里插入图片描述

4、主从复制风暴

主从复制风暴的意思是出现某一瞬间或者某一段时间,有大量的从节点要从主节点复制数据,主节点压力过大,所以我们可以将主从架构部署成如下树形结构,以缓解主节点压力,如下图所示:

在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-21 12:15:18  更:2021-10-21 12:16:04 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:59:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码