当前位置: 首页 > 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.hskmm.com/?act=detail&tid=39298

相关文章:

  • 新地球
  • 2025 年 10 月商用厨房设备,酒店厨房设备,大型厨房设备厂家最新推荐,聚焦高端定制需求与全案交付能力
  • zr模拟赛day8T2
  • 251026
  • 2025 年 10 月食堂厨房设备厂家最新推荐,聚焦资质、案例、售后的食堂场景深度解读
  • embedding
  • 2025 年 10 月不锈钢厨房设备厂家最新推荐,产能、专利、环保三维数据透视
  • 2025 年 10 月餐饮厨房设备厂家最新推荐,实力品牌深度解析采购无忧之选!
  • DINO版本进化
  • 基于深度学习神经网络协同过滤模型(NCF)的视频推荐体系
  • sometime some time sometimes
  • 关于容斥原理
  • 可变字符串
  • 欧拉定理
  • 给安卓设置背景色的时候保持默认按钮样式(关于使用setBackgroundColor导致丢失默认按钮样式的问题)
  • 分片上传与断点续传实现详解
  • 2025 年 10 月展示柜厂家最新推荐,技术实力与市场口碑深度解析!
  • 手把手在 Linux 上安装 Docker 与 Docker Compose(包含 Ubuntu、CentOS 等 11 个发行版)
  • 2025 年 10 月展示柜厂家最新推荐,精准检测与稳定性能深度解析!
  • L
  • 数据处理方法汇总
  • 一些疑问
  • 2025 年 10 月外墙涂料厂家最新推荐,聚焦高端定制需求与全案交付能力
  • 2025年10月长白山亲子酒店推荐榜:四季主题与温泉度假对比排行
  • 2025年10月益生菌品牌推荐榜:全维度对比与榜单解读
  • 2025年10月工装设计公司推荐榜:全国服务力对比评测
  • 2025 年 10 月外墙涂料厂家最新推荐,精准检测与稳定性能深度解析
  • 2025年10月美容仪品牌推荐:无创无痛对比评测榜
  • 进程API
  • 2025年10月中国遗产继承律师推荐榜:五强对比全解析