1.master和slave的读写分离(水平扩容支持读高并发)
2.master主从复制流程
master开始复制给slave前的认证流程
master向slave复制流程
2.1 无磁盘化复制配置
repl-diskless-sync yes #开启无磁盘化复制
repl-diskless-sync-delay 5 #等待一定时间,看是否有其他的slave进行连接,然后进行复制
2.2 断点续传
master和slave节点会创建一个backlog,用来存储replica offset和master id,如果断网后重新连接,slave会让master从上次的replica offset开始继续复制,但是如果没有找到对应的offset,就会进行一次全量复制。
2.3 过期key的处理
slave不会过期key,只会等待master过期key。
如果master过期了key,或者通过LRU淘汰了key,那么master会模拟发送一条del命令给slave。
2.4 建议必须开启master的持久化,不能采用slave的备份数据作为master的数据热备
1)可能在master宕机时还没有数据,一旦重启,会将所有的slave数据清空