redis主从复制

Redis是通过slave of ip port来配置主从复制读写分离的,每次slave与master断开之后,都需要重新连接,从新执行上述配置命令,或者直接将配置写入配置文件

  • case

1:一仆二主

如图所示,6380,6381都是slave,master是6379
这里写图片描述
这里写图片描述
这里写图片描述
1):一旦转成slave,master所有的数据都将被复制
2):slave写失败,只能读
3):master挂掉,slave依然保持自己slave的身份,连接状态down
4):master重新启动,slave则会自动连接,并进行主从复制
5):slave挂掉,重新启动,则只能slaveof ip port 连接

2:薪火相传
master:6379-slave:6380 master:6380-slave:6379
缺点:延时失真
这里写图片描述
这里写图片描述
这里写图片描述

3:反客为主
master挂掉,salveof no one,使得salve变为master,原master重新启动,则变成一个独立master,与slave不在相连
这里写图片描述

  • 主从复制原理
salve启动成功,会向master发送一个sync的命令,master接收到命令之后,启动后台的存
盘进程,同时,收集所有的接收到的用于修改的数据集命令,在后台进程执行完毕之后,master
将传送整个数据文件到slave,以完后一次同步
全量复制:在slave服务接收到数据文件数据之后,将其存盘到内存中
增量复制:master继续将新的所有收集到的修改命令传给slave,完成同步,但是,只要是重新连接master,一次完全复制,将被自动执行
  • 哨兵模式(反客为主的自动版)
能够在后台监控master-slave,如果slave挂掉,则投票从其余的salve选择一个合适的机器作为新的master
1:配置
在Redis的启动目录,新建sentinel.conf文件,内容如下:
sentinel monitor 主机 ip 端口 11代表投票)
2:启动哨兵
redis-sentinel sentinel.conf(上述新创建的文件)
3:一旦主机挂掉,sentinel检测投票选出一个新的主机
4:此时一旦,原先挂掉的主机重启,则在哨兵模式检测下,该重启的master会变成新的master的slave
**一种sentinel可以检测一组master,如果需要检测多个,配置文件里面配置上多个master的信息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值