zoukankan      html  css  js  c++  java
  • Redis入门到精通(十二)——持久化AOF概念、AOF写数据的三种策略(always/everysec/no)、AOF重写方式(手动重写、自动重写)、AOF重写流程、RDB与AOF的选择、Redis持久化总结

    RDB的弊端

    解决思路

    一、AOF的概念

    二、AOF写数据的过程

    客户端发出指令给服务端,服务端并没有马上记录,而是放到AOF写命令刷新缓存区,到一定时间之后将命令同步到AOF文件中。

    AOF写数据三种策略

    always(每次)
    每次写入操作均同步到AOF文件中,数据零误差,性能较低,如果不是对数据非常严格不建议使用
    everysec(每秒)
    每秒将缓冲区中的指令同步到AOF文件中,数据准确性较高,性能较高,建议使用,也是默认配置。在系统突然宕机的情况下丢失1秒内的数据
    no(系统控制)
    由操作系统控制每次同步到AOF文件的周期,整体过程不可控

    AOF功能开启

    两个配置:
    appendonly yes|no        #配置是否开启AOF持久化功能,默认为不开启状态
    
    appendfsync   always|everysec|no      #AOF写数据策略

    注意:数据如果有修改了才会写入.aof文件,只是查询(get)的话不会写入文件

    AOF相关配置

    两个配置:
    appendfilename  filename   #AOF持久化文件名,默认文件名为appendonly.aof,建议配置为appendonly-端口号.aof
    
    dir     #AOF持久化文件保存路径,与RDB持久化文件保持一致即可

    三、AOF写数据遇到的问题

    AOF重写问题

     

     

    AOF重写规则

    四、AOF重写方式

    手动重写   bgrewriteaof      #在客户端输入

    自动重写触发的条件设置
    auto-aof-rewrite-min-size  size    #设置触发aof的最小尺寸
    auto-aof-rewrite-percentage percent     #达到重写的百分比
    
    自动重写触发对比参数(运行指令info  在Persistence获取具体信息)
    aof_current_size
    aof_base_size

    五、AOF重写流程

     非重写流程(always/everysec)

    重写流程

    六、RDB与AOF的区别 

     

     RDB与AOF的选择

     

    七、Redis持久化的总结

    1.什么是持久化
    2.RDB
    save
    bgsave
    配置
    3.AOF
    持久化写策略(三种)
    重写
  • 相关阅读:
    The Mac Application Environment 不及格的程序员
    Xcode Plugin: Change Code In Running App Without Restart 不及格的程序员
    The property delegate of CALayer cause Crash. 不及格的程序员
    nil localizedTitle in SKProduct 不及格的程序员
    InApp Purchase 不及格的程序员
    Safari Web Content Guide 不及格的程序员
    在Mac OS X Lion 安装 XCode 3.2 不及格的程序员
    illustrate ARC with graphs 不及格的程序员
    Viewing iPhoneOptimized PNGs 不及格的程序员
    What is the dSYM? 不及格的程序员
  • 原文地址:https://www.cnblogs.com/wangcuican/p/12882930.html
Copyright © 2011-2022 走看看