• redis系列-主从复制


    redis自身提供了主从的机制,通过配置可以实现服务的备份(Master->Slave)。

    配置项

            slaveof <masterip> <masterport>
            masterauth <master-password> <master password=""> //如果master设置了requirepass password       </master>

    复制流程

    1. Slave启动或重新与Master连接时,向Master发送SYNC
    2. Master收到SYNC判断后台是否有正在进行的内存快照保存子进程,没有则启动一个快照保存子进程,有则等待快照保存完成,将快照文件传送给要求同步的Slave
    3. Slave收到快照文件后,清空内存,加载该快照
    4. Master在保存快照过程中,会把改变数据集的命令缓存到一队列中,后续依次发给Slave;在以后的连接未中断过程中,会逐一发送写命令到Slave

    使用注意

    1.通常Master可以配置成只写、不保存,Slave负责对外读、以及持久化(slave-read-only yes)
    2.slave在与Master断开连接或正在同步快照时,通过配置slave可以继续接收读请求或者拒绝请求
    slave-serve-stable-data yes //继续提供服务
    slave-server-stable-data no//不提供服务,返回错误"SYNC with master in progress"
    3.redis没有增量复制,每次新建同步连接都会全量同步快照。slave过多或者网络不稳定导致同步请求多,会增加Master的压力,影响其性能
    4.redis作为缓存比较合适,做为数据库存储,那它的持久化、复制都有缺陷:重启时恢复内存、复制数据都要比较长的时间,出现延迟
    5.Master如果采用AOF持久化,会出现同时写AOF和RDB的情况,响应会受到影响

    本文做为铺垫,用于对搭建redis集群做准备。


  • 相关阅读:
    10.22(day11) Object类 异常
    10.19(day10)
    10.18(day9)内部类 抽象类 接口
    10.17(day8) Static关键字 包的使用 访问修饰符的权限 设计模式
    paho-mqtt error1: incorrect protocol version解决方法
    Python进阶-pickle/eval/exec
    关联分析算法Apriori和FP-Growth
    LOF聚类分析
    Python进阶-迭代器和生成器
    Linux常见坑
  • 原文地址:https://www.cnblogs.com/whuqin/p/4981984.html
Copyright © 2020-2023  润新知