Redis主从复制

    科技2022-07-12  130

    目录

    1、概述2、主从复制的作用3、原理4、工作流程概述1.建立连接阶段2.数据同步阶段工作流程3.命令传播阶段

    1、概述

    为了避免单点Redis服务器故障,准备多台服务器,互相连通。将数据复制多个副本保存在不同的服务器上,连接在一起,并保证数据是同步的。即使有其中一台服务器宕机,其他服务器依然可以继续提供服务,实现Redis的高可用,同时实现数据冗余备份。

    2、主从复制的作用

    数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主节点,读Redis数据时应用连接从节点),分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。高可用基石:除了上述作用以外,主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础。

    3、原理

    特征:一个master可以拥有多个slave,一个slave只对应一个master

    4、工作流程

    概述
    主从复制过程大体可以分为3个阶段 建立连接阶段(即准备阶段)数据同步阶段命令传播阶段
    1.建立连接阶段

    建立连接方式一:

    slaveof <masterip> <masterport>

    建立连接方式二:

    redis-server -slaveof <masterip> <masterport>

    建立连接方式三(配置文件):

    slaveof <masterip> <masterport>

    2.数据同步阶段工作流程

    3.命令传播阶段
    当master数据库状态被修改后,导致主从服务器数据库状态不一致,此时需要让主从数据同步到一致的状态,同步的动作称为命令传播。master将接收到的数据变更命令发送给slave,slave接收命令后执行命令。
    Processed: 0.012, SQL: 8