master负责写操作,slave负责读。做到读写分离。
特点:
- master/slave角色
- master/slave数据相同
- 降低master读压力转交给slave
- 主从复制不会阻塞 master,在同步数据时,master 可以继续处理 client 请求
- 只有一个主 redis,可以有多个从 redis
升级版:哨兵模式,防止master出现crash
主从配置
- 主 redis 配置
无需特殊配置。 - 从redis配置
修改从 redis 服务器上的 redis.conf 文件,添加 slaveof 主 redisip 主 redis 端口。
slaveof 192.168.101.3 6379
主从复制过程
在 redis2.8 版本之前主从复制过程如下图:
复制过程说明:
- slave 服务启动,slave 会建立和 master 的连接,发送 sync 命令。
- master 启动一个后台进程将数据库快照保存到 RDB 文件中;master将中途的写操作存储于缓冲区
- master发送RDB文件给salve
- salve将文件保存到磁盘上,然后加载到内存中恢复
- master把缓存的命令转发给slave
注意:后续 master 收到的写命令都会通过开始建立的连接发送给 slave。
当 master 和 slave 的连接断开时 slave 可以自动重新建立连接。如果 master 同时收到多个 slave 发来的同步连接命令,只会启动一个进程来写数据库镜像,然后发送给所有 slave。
检查replication状态
来源:CSDN
作者:qq_16399457
链接:https://blog.csdn.net/qq_16399457/article/details/103871294