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

Redis 持久化 内存模型 - 指南

目录

RDB vs AOF

内存模型


RDB vs AOF

RDB:手动/定时 BGSAVE 生成快照 dump.rdb(占用小、恢复快;可能丢最近几秒)

AOF:把写命令顺序追加到 appendonly.aof,更安全。appendfsync 三种策略:
always:每次写都 fsync(最安全、最慢)
everysec:每秒 fsync(推荐,最多丢 1 秒)
no:由 OS 自己刷盘(性能好、风险高)

恢复顺序(重启加载):若 AOF 开启,则优先用 AOF;否则用 RDB

恢复顺序 = Redis 重启时,先用 AOF 还是 RDB 来恢复数据的优先级

规则 = 如果开启了 AOF,就优先用 AOF 文件;否则用 RDB 文件

重启加载 = 指 Redis 启动时,从磁盘文件把数据重新加载回内存

为什么叫 BGSAVE?
BG = Background(后台)
SAVE = 保存
BGSAVE = 在后台保存快照
区别于 SAVE 命令,它是“前台保存”,会阻塞整个 Redis,几乎没人用

为什么叫 dump.rdb?
dump = 数据转储 / 快照(database dump)
rdb = Redis DataBase(RDB 格式)
dump.rdb = Redis 材料快照文件

RDB 是 Redis 的一种持久化格式,保存内容的“快照档案”

R = Redis

DB = Database

RDB = Redis Database file

AOF 是 Redis 的另一种持久化方式,把所有写操作顺序追加(append)到日志文件里。

A = Append

O = Only

F = File

AOF = Append Only File(只追加文件,不会改写之前的内容)

AOF 的刷盘策略配置项,决定写入操作多久真正同步到磁盘就是appendfsync

append 表明 AOF 日志是追加写入

fsync 表示强制把缓冲区数据刷到磁盘

合起来就是 AOF 文件追加写入时如何执行 fsync

fsync 是 Unix/Linux 架构里的一个 体系调用

强制把文档缓冲区的内容写入磁盘,确保数据真正落盘就是作用

f = file(文件)

sync = synchronize(同步)

合起来就是 file synchronize ,表示文件同步

表达的就是把文件缓冲和磁盘内容同步

内存模型

Redis 是内存数据库,容量靠 maxmemory 控制
淘汰策略(maxmemory-policy):
allkeys-lru(最常见):淘汰最近最少使用的键
volatile-lru:只淘汰带过期时间的键
noeviction:直接报错

Spring Boot 项目里:
缓存层一般会安装 LRU,防止内存爆掉
写业务代码时最好给缓存数据设置 TTL,避免长期占用

内存数据库是啥?

定义:数据主要存放在内存 (RAM) 中,而不是磁盘

特点:

读写速度特别快(源于内存比磁盘快几个数量级)

数据可能会因为重启/掉电丢失,所以需要额外持久化机制(RDB/AOF)

maxmemory 是 Redis 配置里的参数,控制进程最多能使用多少内存

max = 最大值

memory = 内存

最大内存限制就是直译就

allkeys-lru 是一种内存淘汰策略:当内存满时,淘汰所有 key 里最近最少使用的数据

allkeys = 所有 key 都可能被淘汰

LRU = Least Recently Used(最近最少使用)

所以叫 allkeys-lru = 从所有 key 中按 LRU 淘汰

volatile-lru 是另一种淘汰策略,只淘汰带过期时间 (TTL) 的 key,按 LRU 算法挑选

volatile = 易失的、不稳定的(这里指带过期时间的 key)

LRU = 最近最少应用

volatile-lru = 只在带 TTL 的键中用 LRU 淘汰

noeviction = 不淘汰

含义:当内存用完,再有写请求时直接报错(读请求还许可正常执行)

no = 不

eviction = 驱逐、淘汰

noeviction = 不驱逐任何 key

http://www.zskr.cn/news/30727.html

相关文章:

  • 详细介绍:在不同开发语言与场景下设计模式的使用
  • zr模拟赛day8T2
  • Android下加载libUnreal.so文件
  • 2025 年 10 月不锈钢厨房设备厂家最新推荐,产能、专利、环保三维数据透视
  • DINO版本进化
  • 2025 年 10 月餐饮厨房设备厂家最新推荐,实力品牌深度解析采购无忧之选!
  • 欧拉定理
  • 手把手在 Linux 上安装 Docker 与 Docker Compose(包含 Ubuntu、CentOS 等 11 个发行版)
  • 2025年10月长白山亲子酒店推荐榜:四季主题与温泉度假对比排行
  • 2025年10月工装设计公司推荐榜:全国服务力对比评测
  • 2025年10月法律咨询律所推荐榜:盈科多领域权威排名一览
  • 2025 年 10 月仿石漆厂家最新推荐,专业制造与品牌保障口碑之选
  • 2025年10月防脱生发产品排名榜:术后修复与日常防脱对比
  • Level 0~8 WP
  • 详细介绍:[特殊字符]️ Spring Cloud Eureka 三步通:搭建注册中心 + 服务注册 + 服务发现,通俗易懂!
  • 2025年10月中国办公家具定制公司推荐:口碑排行榜与权威解析
  • 2025年10月中国办公家具定制公司推荐:主流口碑排行榜与避坑指南
  • 芯片落地之道
  • 107.计组--四章
  • 2025 年 10 月铝合金切削液厂家最新推荐,高性能与可靠性兼具的优质品牌
  • 2025 年 10 月硬质合金切削液厂家最新推荐,精准检测与稳定性能深度解析
  • 读AI赋能10助手
  • 深入解析:GESP25年9月编程题解析
  • Anthropic Agent Skills 技术解析与实践
  • 深入解析:【FPGA+DSP系列】——(2)DSP最小核心板进行ADC采样实验(采集电位器输出电压)
  • 2025年耐用的北美款三防灯,单双管三防灯厂家推荐及选择指南
  • 2025年靠谱的广场音乐喷泉,水秀音乐喷泉行业内口碑厂家排行榜
  • 2025年有实力贴体机,手压式真空贴体机用户好评厂家排行
  • 2025年靠谱的汽车改装,别克gl8汽车改装厂家实力及用户口碑排行榜
  • 完整教程:构建融合扩散模块的知识引导式联邦图注意力学习网络用于阿尔茨海默病诊断|文献速递-文献分享