1.工作原理和工作流程
- slave启动,同步初请(slave启动成功连接到master后会发送一个sync命令,一次性同步master数据(全量复制)将自动执行,slave本身自带的数据会被master数据覆盖清除掉)
- 首次连接,全量复制 --> master节点收到sync命令后会开始在后台保存快照(RDB持久化,也就是说主从复制会自动触发RDB),持久化完成后,master将rdb快照文件和所有的缓存的命令发送给slave,就会完成一次性完全同步数据
- 心跳持续,保持通信 (每10秒钟会发送心跳测试)
- 进入平稳,增量复制
- 从机下线,重连续传
2.主从复制的缺点
- 复制延时,信号衰减
所有的写操作都是在master上面操作,然后同步更新到slave中,所以从master同步到slave机器有一定的延迟,当系统繁忙的时候,slave机器数量的增加也会使得这个问题严重
- master可能会挂
挂了系统就会崩溃,数据保存不到redis中
3.在liunx操作系统上实现redis主从复制
- 开启俩台虚拟机,一主一从,配置主从复制,只在slave配置修改
- 在slave的redis.conf文件中,一定要配置主机的密码,masterauth '主机密码"
- slaveof 主机地址 主机端口号