-
定时触发: RDB 持久化是通过设置一个定时触发的机制来进行的。管理员可以配置 Redis 在经过一定时间间隔或执行了一定数量的写操作后触发 RDB 持久化。这个配置通常在 Redis 的配置文件中进行,可以通过
save或save 900 1这样的配置项来设定。bashsave 900 1 # 在900秒内如果有至少1个key被改变,则触发RDB持久化 -
创建数据快照: 当触发条件满足时,Redis 开始创建一个数据快照。这个数据快照是当前内存中所有数据的一个拷贝。
-
创建临时文件: Redis 在创建数据快照的同时,会创建一个临时文件用于存储这个数据快照。这样可以确保在持久化过程中不会影响到当前正在运行的 Redis 服务器。
-
写入数据: 将数据快照写入到临时文件中,确保数据的完整性。这个过程通常是先将数据写入到一个临时文件中,然后再用原子操作将临时文件替换掉旧的 RDB 文件。
-
替换旧文件: 一旦新的 RDB 文件创建完成,Redis 就会用这个新文件替换掉原来的 RDB 文件。这个过程通常是原子的,这意味着在替换的瞬间,Redis 要么完全替换,要么完全不替换。
-
完成持久化: 当替换完成后,Redis 完成了一次 RDB 持久化。这个过程是非常快速的,因为 Redis 只需将内存中的数据写入硬盘。
Redis 使用 RDB 持久化方式的过程
严定洲2024-02-17 10:29
相关推荐
nanxun88617 小时前
记一次诡异的 Docker 容器"串包"故障排查用户15630681035120 小时前
Day01 | Java 基础(Java SE)行者全栈架构师21 小时前
Maven dependency:tree 的 8 个高级用法行者全栈架构师1 天前
IDEA 中 Maven 项目的 15 个红色报错快速解决方法令人头秃的代码0_01 天前
mac(m5)平台编译openjdk用户3169353811832 天前
Java连接Redis唐青枫2 天前
Java JDBC 实战指南:从 Connection 到事务和连接池一个做软件开发的牛马2 天前
MyBatis-Plus 从零实战:完整搭建可运行 Demo,BaseMapper 零 SQL、Wrapper 条件构造、分页插件与代码生成器详解用户3721574261352 天前
Java 处理 PDF 图片:提取 PDF 中的图片,并压缩 PDF 图片体积用户3721574261352 天前
Java 打印 Word 文档:从基础打印到高级设置