• Redis


    复制(Replication)

    redis 支持两种数据持久化的方式:

    • 快照持久化 snap shotting:对全量数据进行备份,默认开启
    • AOF 持久化:对增量数据进行备份,默认关闭

    快照持久化

    redis 默认开启快照持久化。

    持久化频率参数配置

    在 redis 的配置文件中,默认的持久化参数是:

    save 900 1
    save 300 10
    save 60 10000
    

    上面参数表示:

    • 900 秒内至少改变了一个 key,则在第900秒时执行一次快照持久化
    • 300 秒内至少改变了十个 key,则在第300秒时执行一次快照持久化
    • 60 秒内至少改变了 10000 个 key,则在第60秒时执行一次快照持久化

    每次持久化之后,重新开始计时。如果在计时的 60 秒内改变的 key 的个数小于 10000 个,则不执行快照持久化,等到第 300 秒时再判断。如果到了 300 秒时,更新的 key 大于 10 个则执行快照持久化,否则等到第 900 秒再判断。如果到第900 秒时,没有更新任何 key 时不执行快照持久化,更新了至少一个 key 则执行。

    持久化文件位置

    默认情况下,/etc/redis.conf 配置文件中的 dir 配置的目录,同时用于快照持久化和 AOF 持久化所创建的文件。dbfilename 则是快照持久化对应的文件名:

    # The filename where to dump the DB
    dbfilename dump.rdb
    
    # The working directory.
    #
    # The DB will be written inside this directory, with the filename specified
    # above using the 'dbfilename' configuration directive.
    #
    # The Append Only File will also be created inside this directory.
    #
    # Note that you must specify a directory here, not a file name.
    dir /var/lib/redis
    

    手动执行快照持久化

    可以通过 bgsave 命令强制执行快照持久化:

    # redis-cli bgsave
    Background saving started
    

    AOF 持久化

    redis 默认关闭 AOF 持久化,需要编辑配置文件后,重启 redis 并在启动时指定配置文件。注意:打开 AOF 会清空 redis,所以最好在项目开始前就决定好是否开启。

    AOF 通常有更高的备份频率,数据安全性更高,当然对服务器的压力也随之增加。

    appendonly no # 这里改为 yes 后,重启 redis 并指定配置文件,则开启 AOF
    
    appendfilename "appendonly.aof" # AOF 的文件名
    
    # 下面 3 中备份频率,用默认的每秒备份一次即可
    # appendfsync always # 每条写指令备份一次
    appendfsync everysec # 每秒备份一次
    # appendfsync no # 根据服务器负载情况自动判断备份时机
    
    

    压缩 AOF 持久化文件

    AOF 持久化会记录所有的写指令,文件有很大的压缩空间。例如用户的多个 incr 指令可以用一条 set 指令代替。redis 为我们提供了优化压缩 AOF 文件的指令:

    redis-cli BGREWRITEAOF
    

    执行一个 AOF文件 重写操作。重写会创建一个当前 AOF 文件的体积优化版本。

  • 相关阅读:
    传真机换色带
    系统无法安装 OfficeControl.ocx 控件如何解决
    体系结构
    WebOffice 插件
    ArcMAP定义投影坐标
    如何在AutoCAD中将卫星底图变为有坐标参考信息的
    AutoCAD中导入图片
    CGCS2000坐标系与其他坐标系间的差异和转换方法
    FTP服务器(SOCKET)返回异常 500 Command not understood
    Java微信公众平台开发--番外篇,对GlobalConstants文件的补充
  • 原文地址:https://www.cnblogs.com/kika/p/10851538.html
Copyright © 2020-2023  润新知