来自灵魂的拷问:什么是Redis主从复制?
简言之就是:
看下面的图加深下理解:
对,你没看错,Redis主从复制没有动态选举Master节点的能力,主挂了服务就不可以写数据了。仅仅就是增强了应用读数据的并发量同时做数据备份。
一般生产环境会采用 哨兵 或者 Redis Cluster 这种具备Master自动选举的方案,我们学习时还是要掌握主从的原理后,再去更深一步,对于哨兵和Redis Cluster方案感兴趣的话,可以留言告诉我,咱们后面安排上。
接下来,我们实战一下redis的主从架构配置:
port 6378 # 如果是使用的一台机器注意端口要与主机不同
# slaveof < masterip > < masterport >
# 表示当前【从服务器】对应的【主服务器】的IP是192.168.10.135,端口是6379。
slaveof 192.168.137.6 6379
卧槽,你是不是想问:这么简单么?没错就是这么无情,但是这种事情一般代码越少,事情越大,实现原理是啥呀?怎么就可以主从复制了呢?
别慌,七哥,带大家好好缕一缕,整完去应付面试绝对是没有问题的。
Redis从2.8版本开始,使用PSYNC命令代替SYNC命令来执行复制时的同步操作。因此本文只讲解目前采用PSYNC的同步原理。
PSYNC命令具有完整同步(full resynchronization) 和 部分同步 (partial resynchronization)两种模式:
下图展示了主从服务器在执行部分重同步时的通信过程:
全部0条评论
快来发表一下你的评论吧 !