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

redis之AOF持久化过程

流程图
在这里插入图片描述
在redis.conf文件中配置appendonly为yes则开启aof持久化机制

#开启aof持久化,默认关闭为no
appendonly no

也可以在命令行开启
在这里插入图片描述

aof刷盘策略

#每个写操作都会同步刷盘。
appendfsync always
#执行命令后先放入aof缓冲区,每秒钟将缓冲区数据刷盘一次,redis的默认策略
appendfsync everysec
#不主动刷盘,由操作系统处理‌
appendfsync no

aof文件记录的是redis命令的追加操作,通常比rdb文件大得多,例如字符串类型对同一个key多次写操作最后一次才有意义,因此可以通过执行bgrewriteaof命令重写aof文件,达到用最少命令得到相同效果
在这里插入图片描述
也可以配置redis促发阈值时进行bgrewriteaof操作

#auto-aof-rewrite-percentage‌ 的默认值为100,
#这意味着当AOF文件的大小增长到上一次重写后大小的两倍时,
#Redis将自动触发AOF文件的重写操作。这个参数的设置有助于控制AOF文件的大小,
#避免其无限增长,从而优化文件的大小和性能‌
auto-aof-rewrite-percentage 100# 当前AOF文件超过64mb才会自动进行AOF重写
auto-aof-rewrite-min-size 64mb

aof持久化机制优点:
‌1:更高的数据安全性‌:AOF记录了所有的写操作,因此在大多数情况下,它可以提供比RDB更高的数据安全性‌
‌2:更好的灾难恢复‌:AOF文件是一个可读的文本文件,包含了所有的写操作,因此可以更容易地进行灾难恢复‌
‌3:实时持久化‌:AOF支持实时持久化,每次执行写命令时都会立即将操作追加到文件中,确保数据的实时性‌

aof持久化机制缺点:
‌1:更大的存储空间‌:由于AOF记录了所有的写操作,因此它的体积通常会比RDB大得多‌
2‌:较慢的恢复速度‌:由于需要逐条执行写操作来恢复数据,AOF的恢复速度通常会比RDB慢‌
‌3:更复杂的实现‌:AOF的实现相对于RDB来说更复杂,需要处理更多的细节问题,如命令追加、文件写入策略等‌

生产环境选用哪种持久化机制?
rdb和aof都开启

http://www.lryc.cn/news/533261.html

相关文章:

  • Elasticsearch:向量搜索的快速介绍
  • Docker在安装时遇到的问题(第一部分)
  • 使用 OpenGL ES 在 iOS 上渲染一个四边形:从基础到实现
  • Spring Boot 2 快速教程:WebFlux处理流程(五)
  • Vue 鼠标事件合集,关于鼠标右键的处理方法(改写鼠标右键方法、自定义鼠标右键)
  • 两种交换排序算法--冒泡,快速
  • 语音交友app系统源码功能及技术研发流程剖析
  • 零基础Vue入门7——状态管理Pinia
  • Bash (Bourne-Again Shell)、Zsh (Z Shell)
  • Android studio 创建aar包给Unity使用
  • DeepSeek R1 简单指南:架构、训练、本地部署和硬件要求
  • 图论常见算法
  • MySQL三大日志详解
  • 【SQL 中的分组查询与联合查询详解】
  • 【实战篇】用 Cursor 独立开发并上线电商类 Android APP 全攻略
  • quartus24.1版本子模块因时钟问题无法综合通过,FPGA过OOC问题复盘
  • 零基础Vue入门6——Vue router
  • 使用 Let‘s Encrypt 和 OpenResty 实现域名转发与 SSL 配置
  • Lambda 表达式
  • TCN时间卷积神经网络多变量多步光伏功率预测(Matlab)
  • 【Elasticsearch】 Composite Aggregation 详解
  • 如何通过 Logstash 将数据采集到 Elasticsearch
  • mysql的cpu使用率100%问题排查
  • centos虚拟机迁移没有ip的问题
  • 接入 deepseek 实现AI智能问诊
  • 用AVFrame + AVPacket 完成accede编码和直接用ffmpeg命令行实现acc编码的对比
  • 计算机网络笔记再战——理解几个经典的协议6——TCP与UDP
  • 【AI】在Ubuntu中使用docker对DeepSeek的部署与使用
  • openssl使用
  • 《语义捕捉全解析:从“我爱自然语言处理”到嵌入向量的全过程》