7.Redis主从复制实现流程

分类栏目:Redis

资讯

主从复制:

1.从服务器链接主服务器,发送sync命令(写缓存命令)
2.主服务器接收到sync命令后,开始执行bgsava命令生成rdb文件并使用缓冲区记录此后执行的所有写命令; bgsava命令用于在后台异步保存当前数据库的数据到磁盘.
3.主服务器bgsava执行完后,向所有从服务器发送快照文件,并在发送期间记录被执行的写命令;
4.从服务器收到快照文件后丢弃所有旧数据,载入收到的快照;
5.主服务器快照发送完毕后开始向从服务器发送缓冲区中的写命令;
6.从服务器完成对快照的载入,开始接收命令请求,并执行来自主服务器缓冲区的命令;
 

集群模式:

Redis集群中内置了16384个哈希槽,当需要在redis集群中放置一个key-value时,redis先对key使用crc16算法算出一个结果,然后把结果对16384求余数,这样每个key都会对应一个编号在0-16384之间的哈希槽,redis会根据节点数量大致均等的将哈希槽映射到不同的节点.