我是
方圆
,希望这些知识对我们
都有帮助
索引和浏览 ↓
6. 主从复制
6.1 简单了解什么是主从复制
主从复制就是指将一台Redis服务器中的数据,复制到其他的Redis服务器。能够进行写操作的称为主节点
,复制主节点数据的称为从节点
。从节点只能读
,只有主节点能写,且数据的复制过程是单向的
。
在默认情况下,每个Redis服务器都是主节点
;一个主节点可以有多个
从节点,一个从节点只能有一个
主节点。单台Redis服务器内存不要超过20G
6.2 配置从节点的方式
- 在配置文件中修改
slaveof <masterip> <masterport>
,这种是用的最多的 - 通过命令行输入命令配置,这种配置在
从节点断开连接
后会失效。
slaveof 127.0.0.1(地址) 6379(端口号)
info replication #查看该Redis的信息
Tips: 用命令进行配置的时候,若出现主节点断开的情况,再连接之后,仍能作为其从节点的主节点
但是,从节点断开连接之后,再链接,将不会作为从节点出现,而是成为了新的主节点,将不再履行主从复制的职责
6.3 主从复制的作用
- 故障恢复:在主节点出现问题的时候,可以由从节点提供服务
- 负载均衡:进行读写分离,主节点负责写,从节点只能读(进行写操作会报错)
- 高可用基石:集群服务实施的基础
- 数据冗余:主从复制实现了数据的热备份(系统处于正常运转状态下的备份),是持久化之外的一种数据冗余。
6.4 简单了解全量复制和增量复制
- 全量复制:从节点初次链接到主节点时,会将主节点的
全部数据
发送到从节点。 - 增量复制:在进行完全量复制之后,主节点每
增加
一条数据,便会追加到从节点
7. 哨兵模式(自动选举)
7.1 哨兵模式的革新
假设当我们的主节点Redis服务器宕机了,这时我们需要手动命令将其切换为主服务器(命令:slaveof no one)
,用了哨兵模式,那么我们就可以通过哨兵进程
,在主节点宕机的时候,自动选举
出一个新的主节点来提供服务。
7.2 原理图
-
通过发送命令,让Redis服务器返回监控其运行状态,包括主服务器和从服务器。
-
当哨兵监测到master宕机,会自动将slave切换成master,然后通过发布订阅模式通知其他的从服务器,修改配置文件,让它们切换主机。
单个哨兵可能出现失效的情况,多个哨兵更加稳定,哨兵之间也有了互相监控
参考
该系列其他文章
Redis之必备基础知识点,文读百变其意自现(一)
Redis之数据类型,好记性不如烂笔头(二)
Redis之事务乐观锁和Jedis,谁说的Redis不能实现乐观锁的?(三)
Redis之redis.conf解析,了解了这些配置信息,才能说了解Redis(四)
Redis之RDB和AOF持久化机制详解