• 02-Redis持久化、主从复制


    1. Redis持久化

    redis 是一个支持持久化的内存数据库,也就是说 redis 需要经常将内存中的数据同步到磁盘来保证持久化,持久化可以避免因进程退出而造成数据丢失;

      注意:如果两种持久化方案同时存在,AOF的优先级>RDB优先级

    1.1 RDB持久化方式

    RDB持久化把当前进程数据生成快照(.rdb)文件保存到硬盘的过程,RDB不适合实时持久化,适合全量复制,灾难性恢复。

    (1)RDB:文件后缀名xxx.rdb 默认方式

    (2)特点:全量复制,灾难性恢复

    (3)RDB持久化配置

    # 时间策略  snapshot
    save 900 1:表示900s内如果有1条是写入命令,就触发产生一次快照,可以理解为就进行一次备份
    save 300 10:表示300s内有10条写入,就产生快照
    save 60 10000


    # 文件名称
    dbfilename dump.rdb


    # 文件保存路径
    dir /home/work/app/redis/data/


    # 如果持久化出错,主进程是否停止写入
    stop-writes-on-bgsave-error yes


    # 是否压缩
    rdbcompression yes


    # 导入时是否检查
    rdbchecksum yes


    #禁用RDB配置
    save的最后一行写上:
    save ""
    #save 900 1
    #save 300 10
    #save 60 10000

    1.2 AOF持久化方式

    针对RDB不适合实时持久化,redis提供了AOF持久化方式来解决 开启:redis.conf设置:appendonly yes (默认不开启,为no) 默认文件名:appendfilename "appendonly.aof"

    (1)AOF:文件后缀名xxx.aof

    (2)特点:适合实时持久化

    (3)AOF持久化配置

    appendonly yes           //启用aof持久化方式
    # appendfsync always //实时检查是否有数据写入操作,最慢的,但是保证完全的持久化

    以下不推荐使用
    appendfsync everysec //每秒强制写入磁盘一次,性能和持久化方面做了折中,推荐
    # appendfsync no         //完全依赖os,性能最好,持久化没保证(操作系统自身的同步)
    no-appendfsync-on-rewrite  yes  //正在导出rdb快照的过程中,要不要停止同步aof
    auto-aof-rewrite-percentage 100  //aof文件大小比起上次重写时的大小,增长率100%时,重写
    auto-aof-rewrite-min-size 64mb   //aof文件,至少超过64M时,重写

    注意:当AOF和RDB文件同时存在时,优先加载RDB

    (4)Redis主从复制

    新增redis6380.conf, 加入 slaveof 192.168.42.111 6379, 在6379启动完后再启6380,完成配置,断开主机,进行测试。

    Redis主从拓扑

    ① 一主一从

    用于主节点故障转移从节点,当主节点的“写”命令并发高且需要持久化,可以只在从节点开启AOF(主节点不需要)

    ② 一主多从

    针对“读”较多的场景,“读”由多个从节点来分担,但节点越多,主节点同步到多节点的次数也越多,影响带宽,也加重主节点的稳定

    ③ 树状主从

  • 相关阅读:
    27-spark各版本对比
    由世界第一个AI软件工程师Devin引发的热潮背后----程序员到底会不会被代替?AI发展至如今是否初衷已变?
    可视化表格软件-FineReport图表跨sheet引用单元格数据
    说说RabbitMQ延迟队列实现原理?
    大语言模型微调过程中的 RLHF 和 RLAIF 有什么区别?
    周记之马上要答辩了
    vue2 vuex
    hdu7419 2022杭电杯 Alice and Bob(博弈)(思维)
    Python----format()方法,输出格式
    Redis配置与优化
  • 原文地址:https://blog.csdn.net/qq_45037155/article/details/124900971