Redis设计与实现混合持久化

编程

前面介绍了RDB和AOF两种持久化技术,它们都有各自的优缺点,比如RDB丢失数据比较多,而AOF重写耗时,且恢复数据速度相比RDB慢很多,当Redis进化到4.0的时候,提供了混合持久化RDB+AOF。

持久化

该种持久化机制是将两种方式持久化的数据存放到同一个文件当中,图解

Redis进行RDB操作时,用缓冲区记录下RDB期间的所有写命令以及其他会影响数据库和客户端状态的命令

比如:

set hset zadd sadd

SCRIPT LOAD 会修改服务器状态

PUBSUB 发布的消息最终会影响客户端状态

当RDB完成之后,再将缓冲区AOF日志写到文件中

载入

先从RDB部分恢复绝大部分数据,再执行AOF部分的日志,最终数据恢复完成

当然该种机制依然可能丢失1秒的数据

Redis设计与实现-RDB持久化

Redis设计与实现-AOF持久化

以上是 Redis设计与实现混合持久化 的全部内容, 来源链接: utcz.com/z/512793.html

回到顶部