Redis 主从复制
1. 概述
- 数据的复制都是单向的,只能由主节点到从节点,Master 以写为主,Slave 以读为主
- 主从复制,读写分离,主要是解决读的问题 ==> 80% 的情况下都是在进行读操作! 减缓服务器的压力! 架构中经常使用! 一主二从
- 默认情况下,每台Redis服务器都是主节点
2. 环境配置
只配置从库,不用配置主库
-
info replication ====> 查看当前库的信息
-
-
-
查看我们开启的redis服务
-
3. 一主二从搭建
-
我们一般情况下,只用配置从机就好了!
-
认老大,一主(79)二从(80,81)
-
从机配置 ====> slaveof host port
-
-
主机的信息
-
4. 细节
-
主机可以写,从机不能写,只能读
-
-
主机中的所有信息和数据,都会自动被从机保存
-
主机断开连接,从机依旧连接到主机,但是没有些操作了. 如果主机回来了,从机依旧可以直接获取到主机写的信息
-
如果是是用命令行来配置的主从,这个时候,如果重启了,就会变回主机
-
只要变回从机,立马就会从主机中获取值!
-
*命令 slaveof no one ====> 使自己成为主机,其他的节点就可以手动连接到这个最新的主节点*
5. 哨兵模式
-
自动选取老大的模式!
-
Redis从2.8开始正式提供了 Sentinel (哨兵) 架构来解决这个问题
-
哨兵是一个独立的进程,他会独立运行,其原理是 哨兵通过发送命令,等待 Redis 服务器响应,从而监控运行的多个Redis实例
-
我们可以使用多哨兵模式,哨兵之间也会进行监控