• 技术文章 >数据库 >Redis

    聊聊Redis的持久化机制,到底采用RDB还是AOF呢?

    青灯夜游青灯夜游2021-11-25 19:23:22转载188
    本篇文章带大家了解一下Redis的持久化机制(RDB和AOF),聊聊到底采用RDB还是AOF呢?希望对大家有所帮助!

    RDB

    1. 什么是RDB

    RDB:每隔一段时间,把内存中的数据写入磁盘的临时文件,作为快照,恢复的时候把快照文件读进内存。如果宕机重启,那么内存里的数据肯定会没有的,那么再次启动redis后,则会恢复。【相关推荐:Redis视频教程

    2. 备份与恢复

    内存备份 --> 磁盘临时文件
    临时文件 --> 恢复到内存

    3. RDB优劣势

    4. RDB的配置

    save 900 1
    save 300 10
    save 60 10000
    save 10 3
    * 如果1个缓存更新,则15分钟后备份
    * 如果10个缓存更新,则5分钟后备份
    * 如果10000个缓存更新,则1分钟后备份

    总结

    RDB适合大量数据的恢复,但是数据的完整性和一致性可能会不足。

    AOF

    AOF特点

    优势

    劣势

    AOF的配置

    `# AOF 默认关闭,yes可以开启
    appendonly no
    
    # AOF 的文件名
    appendfilename "appendonly.aof"
    
    # no:不同步
    # everysec:每秒备份,推荐使用
    # always:每次操作都会备份,安全并且数据完整,但是慢性能差
    appendfsync everysec
    
    # 重写的时候是否要同步,no可以保证数据安全
    no-appendfsync-on-rewrite no
    
    # 重写机制:避免文件越来越大,自动优化压缩指令,会fork一个新的进程去完成重写动作,新进程里的内存数据会被重写,此时旧的aof文件不会被读取使用,类似rdb
    # 当前AOF文件的大小是上次AOF大小的100% 并且文件体积达到64m,满足两者则触发重写
    auto-aof-rewrite-percentage 100
    auto-aof-rewrite-min-size 64mb`

    到底采用RDB还是AOF呢?

    更多编程相关知识,请访问:编程入门!!

    以上就是聊聊Redis的持久化机制,到底采用RDB还是AOF呢?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:掘金社区,如有侵犯,请联系admin@php.cn删除
    专题推荐:Redis 持久化机制 RDB AOF
    上一篇:聊聊Redis中的缓存穿透、缓存雪崩、缓存击穿和缓存一致性 下一篇:浅谈Redis中缓存过期、内存被缓存占用要怎么处理?

    相关文章推荐

    • 浅谈Redis中的字典、哈希算法和ReHash原理• 浅析Redis缓存中的8种淘汰策略• 浅析Redis中AOF的原理和缺点• Redis中什么是慢查询、订阅模式• 深入了解Redis中的主从同步机制

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网