当前位置: 首页 > news >正文

一问讲透redis持久化机制-rdb aof

一问讲透redis持久化机制-rdb aof


文章目录

  • 一问讲透redis持久化机制-rdb aof
  • 前言
  • 一、RDB
  • 二、AOF
  • 二、原理


前言

提示:这里可以添加本文要记录的大概内容:

redis作为内存数据库,常常作为系统的缓存使用,但是内存是断电清空数据的,所以redis提供了自己的一套持久化机制,主流的是rdb和aof两种持久化机制,常常混合使用在实际使用中


一、RDB

1、RDB是redis中的之中持久化在磁盘的文件,用于存储redis在内存中存储的所有键值对
在这里插入图片描述

2、对应常用的配置
在这里插入图片描述

# rdb文件名称 redis启动和断电关闭都会写入数据到这个文件中
dbfilename dump.rdb
# 多少秒区间中 变更key多少次就保存一次数据到rdb
save 900 1
save 300 10
save 60 10000

3、常用指令

D:\redis\Redis-x64-new5.0.14.1>redis-cli.exe
127.0.0.1:6379> save
OK
127.0.0.1:6379>

在这里插入图片描述
save指令会写入数据到rdb文件 但是会阻塞主主线程,生产环境慎用!
应该用bgsave,这个指令不会阻塞主线程,会新开一个子线程去异步写入数据到rdb文件

127.0.0.1:6379> bgsave
Background saving started
127.0.0.1:6379>

在这里插入图片描述
4.缺点
因为写入rdb有时间间隔,所以会出现某些时间间隔还没到写入的时间,redis宕机,导致丢失那一段时间的数据。需要配合AOF机制来使用

二、AOF

1、AOF是redis的一种记录所有的操作指令的文件,所以他的大小一般是大于rdb文件

2、常用配置

# 是否开启aof
appendonly yes
# 保存的aof文件名称
appendfilename "appendonly.aof"
写入aof的频率配置
# appendfsync always 只要有指令更新 就写入 性能最差 但是数据安全性
最好
appendfsync everysec 每秒写入一次 性能适中 数据安全性适中 最多丢失1s数据
# appendfsync no 交给操作系统来控制写入 性能最好 稳定性最差
一般默认都是everysec 模式
重写aof的机制 指令可能会很多冗余的被存储在aof中 aof提供了一种重写机制 会
剔除多余的指令写入aof       
aof体积比上次增加百分之多少触发重写                        
auto-aof-rewrite-percentage 100
aof体积最小达到多少就触发重写
auto-aof-rewrite-min-size 64mb


二、原理

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/a/108766.html

相关文章:

  • 深度优化:解决SpringBoot应用启动速度慢的8个关键策略
  • 部署大模型实战:如何巧妙权衡效果、成本与延迟?
  • 智慧园区大屏如何实现全局监测:监测意义、内容、方式
  • .NET WebApi的详细发布流程——及其部署到Linux与Windows平台
  • AG32:MCU和CPLD如何交互?
  • 6.3 八皇后问题搜索
  • 几个在面试中遇到的计算机基础问题
  • C与指针的神秘面纱
  • 【Docker-7】Docker是什么+Docker版本+Docker架构+Docker生态
  • sshd启动报错“Failed to start OpenSSH Server daemon”
  • Python不可变数据类型全解析:原理、优势与实战指南
  • C#游戏开发【第18天】 | 深入理解队列(Queue)与栈(Stack):从基础到任务队列实战
  • 关闭Chrome提示更新失败的弹窗
  • 前端:v-html和v-text在使用上的区别
  • Scala相关知识学习总结4
  • Ubuntu安装Elasticsearch
  • 【通信观察家】2025年Q1通信业技术跃迁与生态重构:AI+低空经济双轮驱动
  • ffmpeg视频转码相关
  • 统计项目代码行数工具—cloc
  • 001英超:切尔西VS热刺, 伦敦德比“大”战可期
  • 查看进程,认识fork
  • Python 设计模式:外观模式
  • 汽车 HMI 设计的发展趋势与设计要点
  • 《MyBatis CRUD实战与核心配置详解:从基础操作到高级应用》
  • Python入门(8):文件
  • SQL Server Integration Services (SSIS) 服务无法启动
  • I2C 读写 AT24C02
  • Genspark:重新定义搜索体验的AI智能体引擎
  • 循环结构- P1217-回文质数-第三十四天
  • 理解 Cookies:工作原理、类型与隐私安全指南