一、redis启动时载入持久化文件的流程。

二、redis两种持久化机制

两种持久化机制是RDB和AOF机制,下面介绍下是什么和优缺点。


RDB持久化是指用数据集快照的方式记录redis数据库的所有键值对。

两个命令:SAVE命令会阻塞主进程来完成写文件,BGSAVE命令会创建子进程来完成写文件,主进程会继续处理命令。

优点:

  1.只有一个文件dump.rdb,方便持久化。

  2.容灾性好,一个文件可以保存到安全的磁盘。

  3.性能最大化,fork子进程来完成写操作,让主进程继续处理命令,所以是IO最大化。

  4.相对于数据集大时,比AOF的启动效率更高。

缺点:

  1.数据安全性低,通过配置save参数来达到定时的写快照,比如 每900 秒有1个键被修改就进行一次快照,每600秒至少有10个键被修改进行快照,每30秒有至少10000个键被修改进行记录。所以如果当服务器还在等待写快照时出现了宕机,那么将会丢失数据。

  2.fork子进程时可能导致服务器停机1秒,数据集太大。


AOF持久化是指所有的命令行记录以redis命令请求协议的格式保存为aof文件。

优点:

  1.数据安全,aof持久化可以配置appendfsync属性,有always,每进行一次命令操作就记录到aof文件中一次;everySec,就是每秒内进行一次文件的写操作;no就是不进行aof文件的写操作。

  2.通过append模式写文件,即使中途服务器宕机,可以通过redis-check-aof工具解决数据一致性问题。

  3.AOF机制的rewrite模式,用来将过大的aof文件缩小,实现原理是将所有的set 通过一句set 命令总结,所有的SADD命令用总结为一句,这样每种命令都概括为一句来执行,就可以减少aof文件的大小了。(注意,在重写的过程中,是创建子进程来完成重写操作,主进程每个命令都会在AOF缓冲区和AOF重写缓冲区进行保存,这样旧版aof文件可以实现数据最新,当更新完后将重写缓冲区中的数据写入新的aof文件中然后就可以将新的文件替换掉旧版的文件。

缺点:

  1.文件会比RDB形式的文件大。

  2.数据集大的时候,比rdb启动效率低。

转载于:https://www.cnblogs.com/chenxiaoxian/p/10426939.html

缓存使用-4、Redis 持久化机制相关推荐

  1. Redis持久化机制及缓存失效解决方案

    Redis集群故障监测及哨兵机制原理解析 Redis海量数据存储方案Redis Cluster 前言 在之前的文章写过redis的实用功能,包括数据结构,主从复制结构,以及应对高并发海量数据场景下的分 ...

  2. Redis持久化机制(RDB VS AOF)

    Redis持久化机制 Redis持久化机制由来 一.RDB机制 1.1 工作原理 1.2 RDB的配置 1.3 修改RDB配置的快照策略 1.3.1 自定义RDB持久化策略 1.3.2 服务宕机RDB ...

  3. Redis系列:Redis持久化机制与Redis事务

    Redis 是个基于内存的数据库.那服务一旦宕机,内存中数据必将全部丢失.所以丢失数据的恢复对于 Redis 是十分重要的,我们首先想到是可以从数据库中恢复,但是在由 Redis 宕机时(说明相关工作 ...

  4. Redis系列之Redis持久化机制

    Redis持久化机制 为什么要持久化 如果Redis再次访问时,发现Redis的数据是空的,就会形成缓存穿透.更重要的是,因为Redis的数据是空的,所以客户端想要访问的key都没有,就会造成大量的请 ...

  5. Redis持久化机制

    1.简单介绍一下Redis Redis是使用C语言开发的数据库,不过与传统数据库不同的是Redis的数据是存在内存中的,也就是内存数据库,读写速度非常的快,因此Redis被广泛应用于缓存方向. 2.R ...

  6. redis的通用命令 || redis持久化机制:(RDB  ||  AOF)

    通用命令 1. keys * : 查询所有的键         2. type key : 获取键对应的value的类型         3. del key:删除指定的key value 持久化   ...

  7. redis缓存架构-02-两种持久化机制(RDB和AOF)

    1.两种持久化机制的介绍 1.1 RDB 周期性的生成redis内存数据的一份完整的快照 1)根据配置的检查点,生产rdb快照文件,fork一个子线程,将数据dump到rdb快照文件中,完成rdb文件 ...

  8. redis持久化机制,深入分析redisAOF和RDB模式的利弊

    文章目录 写在前面 日志文件-AOF AOF的格式 AOF的写入方式 三种写回策略 AOF 中开启 always 刷盘策略也会存在数据丢失吗? AOF配置为每秒刷盘,有可能阻塞Redis,影响性能吗? ...

  9. Redis系列(五)Redis持久化机制

    文章目录 Redis持久化 为什么需要持久化 RDB 概念 触发条件(什么时候触发?) 自动触发 手动触发 通过RDB文件恢复数据 优势 不足 AOF 概念 同步机制 重写机制 重写过程 重写触发条件 ...

最新文章

  1. 生成对抗网络是什么?
  2. 【认证课程】NP 理论复习之ospf(一)
  3. python散点图拟合曲线-python 拟合曲线并求参
  4. Tomcat中的线程池(APR和ThreadPool)
  5. C/C++实现模糊控制,借助MATLAB辅助设计和fis.c文件
  6. spark on yarn webUI logs不能查看
  7. testlink(以及服务器)问题定位思路
  8. seo关键词互点软件报价_舟山seo关键词优化软件
  9. 【转载】谈谈自己对REST、SOA、SOAP、RPC、ICE、ESB、BPM知识汇总及理解
  10. Linux kali2021 密码学PBC库安装
  11. thinkpkp typecho maccms 全站加密不改动源码方法,多数php程序通用
  12. 华为路由器接学校校园网,LOS一直亮红灯解决办法。
  13. 编写广告系统的测试用例
  14. 论文解读-通过建模时空动态生成活动轨迹
  15. 1021 Deepest Root(dfs,图的联通子集个数,树的深度)
  16. 7个黑科技十足的微信小程序,每一个都能让你念念不舍!
  17. EEPROM, NAND FLASH, NOR FLASH
  18. aba会导致问题_浅谈Java中ABA问题及避免
  19. 鲁大师发布2021年半年报,哪些手机最强?
  20. Eclipse显示空格,换行符等

热门文章

  1. 《数据库原理与应用》(第三版) 第 3 章 关系数据库 习题参考答案
  2. 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言——1078:求分数序列和
  3. 1000:入门测试题目
  4. 【Linux】一步一步学Linux——dircolors命令(239)
  5. matlab 滤掉高斯噪声吗,我想问一下:怎么用matlab编写函数对图像进行高斯滤波以去除噪声...
  6. vs.net 打开.xaml文件编辑界面_怎么保护可移动磁盘中的文件防止被删除
  7. SpringBoot源码笔记分析
  8. Codeforces 988F. Rain and Umbrellas
  9. 记录kafka-flink bug
  10. html(5)标签form表单——进阶