缓存使用-4、Redis 持久化机制
一、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 持久化机制相关推荐
- Redis持久化机制及缓存失效解决方案
Redis集群故障监测及哨兵机制原理解析 Redis海量数据存储方案Redis Cluster 前言 在之前的文章写过redis的实用功能,包括数据结构,主从复制结构,以及应对高并发海量数据场景下的分 ...
- Redis持久化机制(RDB VS AOF)
Redis持久化机制 Redis持久化机制由来 一.RDB机制 1.1 工作原理 1.2 RDB的配置 1.3 修改RDB配置的快照策略 1.3.1 自定义RDB持久化策略 1.3.2 服务宕机RDB ...
- Redis系列:Redis持久化机制与Redis事务
Redis 是个基于内存的数据库.那服务一旦宕机,内存中数据必将全部丢失.所以丢失数据的恢复对于 Redis 是十分重要的,我们首先想到是可以从数据库中恢复,但是在由 Redis 宕机时(说明相关工作 ...
- Redis系列之Redis持久化机制
Redis持久化机制 为什么要持久化 如果Redis再次访问时,发现Redis的数据是空的,就会形成缓存穿透.更重要的是,因为Redis的数据是空的,所以客户端想要访问的key都没有,就会造成大量的请 ...
- Redis持久化机制
1.简单介绍一下Redis Redis是使用C语言开发的数据库,不过与传统数据库不同的是Redis的数据是存在内存中的,也就是内存数据库,读写速度非常的快,因此Redis被广泛应用于缓存方向. 2.R ...
- redis的通用命令 || redis持久化机制:(RDB || AOF)
通用命令 1. keys * : 查询所有的键 2. type key : 获取键对应的value的类型 3. del key:删除指定的key value 持久化 ...
- redis缓存架构-02-两种持久化机制(RDB和AOF)
1.两种持久化机制的介绍 1.1 RDB 周期性的生成redis内存数据的一份完整的快照 1)根据配置的检查点,生产rdb快照文件,fork一个子线程,将数据dump到rdb快照文件中,完成rdb文件 ...
- redis持久化机制,深入分析redisAOF和RDB模式的利弊
文章目录 写在前面 日志文件-AOF AOF的格式 AOF的写入方式 三种写回策略 AOF 中开启 always 刷盘策略也会存在数据丢失吗? AOF配置为每秒刷盘,有可能阻塞Redis,影响性能吗? ...
- Redis系列(五)Redis持久化机制
文章目录 Redis持久化 为什么需要持久化 RDB 概念 触发条件(什么时候触发?) 自动触发 手动触发 通过RDB文件恢复数据 优势 不足 AOF 概念 同步机制 重写机制 重写过程 重写触发条件 ...
最新文章
- 生成对抗网络是什么?
- 【认证课程】NP 理论复习之ospf(一)
- python散点图拟合曲线-python 拟合曲线并求参
- Tomcat中的线程池(APR和ThreadPool)
- C/C++实现模糊控制,借助MATLAB辅助设计和fis.c文件
- spark on yarn webUI logs不能查看
- testlink(以及服务器)问题定位思路
- seo关键词互点软件报价_舟山seo关键词优化软件
- 【转载】谈谈自己对REST、SOA、SOAP、RPC、ICE、ESB、BPM知识汇总及理解
- Linux kali2021 密码学PBC库安装
- thinkpkp typecho maccms 全站加密不改动源码方法,多数php程序通用
- 华为路由器接学校校园网,LOS一直亮红灯解决办法。
- 编写广告系统的测试用例
- 论文解读-通过建模时空动态生成活动轨迹
- 1021 Deepest Root(dfs,图的联通子集个数,树的深度)
- 7个黑科技十足的微信小程序,每一个都能让你念念不舍!
- EEPROM, NAND FLASH, NOR FLASH
- aba会导致问题_浅谈Java中ABA问题及避免
- 鲁大师发布2021年半年报,哪些手机最强?
- Eclipse显示空格,换行符等
热门文章
- 《数据库原理与应用》(第三版) 第 3 章 关系数据库 习题参考答案
- 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言——1078:求分数序列和
- 1000:入门测试题目
- 【Linux】一步一步学Linux——dircolors命令(239)
- matlab 滤掉高斯噪声吗,我想问一下:怎么用matlab编写函数对图像进行高斯滤波以去除噪声...
- vs.net 打开.xaml文件编辑界面_怎么保护可移动磁盘中的文件防止被删除
- SpringBoot源码笔记分析
- Codeforces 988F. Rain and Umbrellas
- 记录kafka-flink bug
- html(5)标签form表单——进阶