美文网首页
redis持久化机制

redis持久化机制

作者: 打不死的小强1118 | 来源:发表于2020-07-02 09:58 被阅读0次

    redis持久化机制的原理

    一、两种实现redis持久化的机制,RDB模式和AOF模式

    ①RDB模式
    1.有三种具体的实现方式,save,bgsave,修改redis.conf配置
    2.save方式会占用redis的进程,在save期间redis不可以处理其他的命令会造成redis拥堵,会替换掉老的dump.rdb文件
    3.bgsave会fork出redis的一个子进程,在后台异步进行快照操作,并不会造成redis的拥堵,会替换掉老的dump.rdb文件
    4.自动同步,即修改redis.conf中的配置数据
     eg:save:这里是用来配置触发 Redis的 RDB 持久化条件,也就是什么时候将内存中的数据保存到硬盘。比如“save m n”。表示m秒内数据集存在n次修改时,自动触发bgsave。
    
    ②AOF模式
    1.将redis的写命令记录在AOF的文件中
    2.AOF有三种机制
      2.1 always:当redis数据发生变化时即同步
      2.2 everysec : 每秒钟同步,无论数据有无更改
      2.3 no:从不同步
    

    RDB和AOF的优缺点

    1.RDB优点:适合大数据集的回复,fork子进程不会造成进程拥堵
    2.RDB缺点:RDB快照是一次全量备份,存储的是内存数据的二进制序列化形式,存储上非常紧凑。当进行快照持久化时,会开启一个子进程专门负责快照持久化,子进程会拥有父进程的内存数据,父进程修改内存子进程不会反应出来,所以在快照持久化期间修改的数据不会被保存,可能丢失数据
    3.AOF优点:AOF每隔一秒同步一次数据,最多只会丢失1s钟的数据
    4.AOF缺点:aof文件要比rdb文件要大

    RDB和AOF如何选择

    image.png

    相关文章

      网友评论

          本文标题:redis持久化机制

          本文链接:https://www.haomeiwen.com/subject/udyofktx.html