Redis Cloud · 秒级落盘 · AOF 每秒写入磁盘永久存储

作者:杨帅      发布日期:2026.07.31

Redis Cloud · 数据持久化

秒级落盘

内存里的极速写入,每一秒都稳稳落到磁盘

Redis 快,是因为数据活在内存里;但内存一断电就没了。开启 AOF 「每 1 秒写盘」后,Redis Cloud 会每隔一秒,把这一秒内的所有写操作 fsync 到持久磁盘——既保住速度,又几乎不丢数据。

▲ 写入进内存 · 每秒刷入磁盘aof · fsync everysec · live
写入 WRITES SET HSET INCR 内存 · RAM volatile · 极速 fsync 每 1 秒 1s tick 持久磁盘 DISK · 永久存储 appendonly.aof
内存 RAM:写得飞快,但断电即失 持久磁盘:每 1 秒 fsync 落盘,故障可恢复
01 · 为什么要落盘

内存很快,也很脆

Redis 把数据放在内存里,所以读写快。代价是:内存是易失的——进程崩溃、机器重启、断电,内存里的一切瞬间清零。

持久化(persistence)做的事,就是把内存里的数据复制一份到磁盘这类持久存储上。故障之后,Redis 能从磁盘把数据读回来、重建现场。Redis Cloud 的持久化,是把内存数据复制到底层云实例挂载的持久盘上。

打个比方

内存像一块白板:写得快、擦得也快,一停电就全白。落盘就是每隔一会儿,把白板上的内容抄进一个上锁的账本——白板没了,账本还在,照着重抄一遍就恢复了。

!

关掉持久化 = 裸奔。 如果不开持久化,数据库一旦宕机,内存里的数据就彻底丢失。纯做缓存、丢了无所谓时才建议关。

02 · 两种落盘方式

流水账(AOF) vs 定时拍照(快照

Append-Only File

AOF · 追加文件

像一本流水账,把每一个写操作按顺序记进磁盘日志。恢复时把账本重放一遍,就能重建到故障前的状态。耐用性更高。

Snapshot / RDB

快照 · 定时全量

每隔固定时间(1 / 6 / 12 小时)给内存拍一张全量照片存盘。恢复更快,但两次快照之间的写入有丢失风险。

▲ 连续追加 vs 周期快照durability window
AOF · 每个写都追加 粒度细 · 几乎不丢 · 恢复靠重放 快照 · 每隔一段时间全量 ← 崩溃发生在这里,这段写入全丢 →

一句话:AOF 更耐用(durability 更高),代价是更多资源和更长恢复时间;快照恢复快,但丢数据风险更高。

03 · 「秒级」到底指什么

关键在 fsync 的节奏

fsync 是把数据真正刷到磁盘的动作。AOF 落盘的「勤快程度」有三档,安全与性能在这里权衡——「秒级」就是中间那一档。

仅 PRO
every write

每次写入

每一个写都立刻 fsync。几乎零丢失,但性能开销最大。

安全极高
性能偏低
推荐
every 1 second

每 1 秒

每隔一秒批量 fsync。最多丢约 1 秒数据,性能几乎无损。

安全很高
性能很高
none

不用 AOF

只靠快照或完全不落盘。最快,但崩溃丢失窗口最大。

安全
性能最高

「每 1 秒」是绝大多数场景的甜点档:丢失上限约 1 秒,而吞吐几乎和纯内存一样。要真正零丢失,才升到「每次写入」(需 Pro)。

04 · 在 Redis Cloud 里开启

三步打开每秒落盘

数据持久化是「每个数据库」独立的配置项,在编辑数据库设置里就能改。

1

打开数据库设置

Redis Cloud 控制台里选中目标数据库,进入 编辑(Edit) 页面。

2

选择持久化档位

找到 Data persistence 一项,从下拉里选 Append Only File (AoF) every 1 second。可选值一览:

None             # 完全不落盘 AoF every write    仅 Redis Cloud Pro AoF every 1 second  ← 秒级落盘(本文主角) Snapshot every 1 hour Snapshot every 6 hours Snapshot every 12 hours
3

保存并等待后台生效

保存后,新设置会在后台异步应用,会有短暂延迟。

小知识:当数据库开启了副本(replication),持久化会在副本上执行,从而减少对主库的性能影响

05 · 套餐可用性

哪种套餐能用哪档

免费 Essentials
  • 完全不支持持久化
  • 选项整个被禁用
  • AOF 每 1 秒
  • 所有快照档(1/6/12 小时)
  • AOF 每次写入
Pro
  • AOF 每次写入
  • AOF 每 1 秒
  • 所有快照档
  • 每个数据库都可单独配置
i

想用秒级落盘,至少要付费套餐(付费 Essentials 或 Pro)。想要每次写入的零丢失,则必须是 Pro

06 · 别踩这些坑

关于秒级落盘的几个真相

!
「秒级」≈ 最多丢 1 秒极端崩溃时,AOF 每秒档最多丢失最近约 1 秒的写。要零丢失得用「每次写入」(Pro)。
!
恢复不是瞬间AOF 靠重放日志恢复,数据越多越慢,比快照恢复要久。
!
默认未必开着免费档根本没有;付费档也要自己手动选,别假设它已启用。
!
快照与 AOF 各有所长要快速重启选快照,要高耐用选 AOF——按业务对「丢失容忍度」来定。
!
关闭 = 宕机即丢选 None 意味着数据库一挂,内存数据全没。只有把 Redis 当纯缓存、丢了能重建时才这么做。
收尾 · 一句话

内存的速度,磁盘的安心

AOF「每 1 秒写盘」用几乎为零的性能代价,换来「最多丢约 1 秒」的持久保障。对绝大多数在线业务,这就是速度与安全之间最划算的那个点。

写入进内存 → 每 1 秒 fsync 落盘 → 故障后重放恢复 · 快,且不丢。