【Redis】02什么是Redis持久化?Redis有哪几种持久化?优缺点是什么?

1. 什么是持久化?

持久化把内存中的数据存储到硬盘中,有效避免进程退出造成的数据丢失。

2. 持久化的方式

2.1 RDB Redis DataBase

  • 功能核心函数, rdbSave rdbLoad
  • 把当前进程的快照数据保存到硬盘中

2.1.1 优点

  • 代表Redis某个时间点上的数据快照。
  • 用户备份,全量复制
  • Redis 加载RDB恢复数据远远快于AOF

2.1.2 缺点

  • 无法做到实时持久化,秒级持久化
  • 二进制格式,存在兼容问题

2.2 AOF Append-only file

  • 核心函数 flushAppendOnlyFile
  • 每当执行服务器任务或函数时,flushAppendOnlyFile 都会被调用。
  • WRITE: 根据条件,将aof_buf中的缓存写入AOF文件
  • SAVE: 根据条件,调用fsync fdatasync 命令,把AOF文件保存到磁盘中
  • 存储结构:内容是Redis通讯协议格式的命令文本存储。

2.3 AOF 和 RDB对比

  • AOF 比 RDB 更新频率更高,优先使用AOF还原数据
  • AOF 比 RDB更安全,更大
  • RDB性能比AOF好
  • 优先加载AOF

猜你喜欢

转载自blog.csdn.net/huatangzhithree/article/details/89950915