讲师中心 微信公众号
AI工具推荐 视频效率加速

Redis怎样配置AOF的同步策略_对比always/everysec/no的落盘时机选择

风明君_3616

风明君_3616

发布时间:2026-03-30 13:16:03

|

264人浏览过

|

来源于php中文网

原创

appendfsync 默认为 everysec,可改为 always 或 no,但必须配合 appendonly yes 才生效;改后需 CONFIG REWRITE 或重启,且 AOF 重写期间策略临时降级为 no。

redis怎样配置aof的同步策略_对比always/everysec/no的落盘时机选择

怎么在 redis.conf 里配 appendfsync

直接改配置文件里的这一行就行:appendfsync everysec(默认值),改成 always 或 no 也只换这个词,不用加引号、不用改路径或重启以外的其他项。

注意:必须同时开启 AOF 功能,否则这个配置不生效——确认 appendonly yes 已启用。改完记得 redis-cli CONFIG REWRITE 或重启服务,CONFIG GET appendfsync 可实时验证是否生效。

  • 别漏掉 appendonly yes,光设 appendfsync 没用
  • 改完不 reload/restart,新策略不会生效;用 CONFIG SET appendfsync everysec 是临时生效,但重启后会丢
  • appendfsync 是全局策略,不能按 DB 或 key 粒度区分

always / everysec / no 的落盘时机和实际丢失风险

三者本质区别在于「Redis 进程把命令从内存缓冲区刷到磁盘」的触发时机不同,不是“写不写”,而是“什么时候真正落盘”:

  • always:每次写命令执行完,立刻调用 fsync() 强制刷盘。断电/崩溃几乎不丢数据,但每条命令都等 I/O,QPS 明显下降(尤其机械盘)
  • everysec:命令先写进内核缓冲区,Redis 启一个后台线程,每秒 fsync() 一次。宕机最多丢 1 秒数据,吞吐和安全性平衡最好,95% 场景该选它
  • no:只调用 write(),由操作系统决定何时 fsync()(通常几秒到几十秒不等)。性能最高,但意外掉电可能丢几分钟数据——别在非纯缓存场景用

实测过:压测写入 10k QPS 时,always 延迟常飙到 2–5ms,everysec 稳在 0.2–0.4ms,no 能压到 0.08ms 以下,但关机后发现 AOF 文件里少了近 3 秒的命令。

为什么 everysec 是默认且最稳妥的选择

它不是“折中妥协”,而是 Redis 在 Linux 内核行为、磁盘 I/O 特性、故障统计概率之间反复权衡后的工程解:

  • Linux 的 write() + 定期 fsync() 组合,在 ext4/xfs 上能保证每秒刷盘的可靠性,极少出现“卡住不刷”
  • 单点 Redis 故障时,1 秒数据丢失在绝大多数业务(如会话、排行榜、计数器)中可接受;真要零容忍,得上哨兵+从库+AOF+重放链路,不是靠调一个参数
  • 对比 RDB,everysec 的 AOF 恢复更可控——RDB 快照间隔外的数据全丢,而 AOF 至少保留最近 1 秒

曾有团队把生产库切到 always 后发现延迟毛刺变多,监控显示 fsync 耗时峰值超 8ms(NVMe 盘都这样),最后还是切回 everysec 并加了从库兜底。

容易被忽略的两个硬限制

再合理的策略,撞上这两个点就失效:

  • AOF 重写期间,appendfsync 策略会暂时降级为 no(即使你配的是 always),因为重写是子进程做的,主进程只管追加新命令,此时新命令只 write() 不 fsync() —— 所以别在重写高峰做关键数据写入
  • 如果磁盘满、AOF 文件不可写,Redis 默认会停止写操作并报错 OOM command not allowed when used memory > 'maxmemory'.(实际是 I/O 错误被掩盖了),日志里找 Can't open the append-only file 才是真因

配置里加 auto-aof-rewrite-min-size 64mb 和 auto-aof-rewrite-percentage 100 能减少重写频率,但无法消除它——这点比参数本身还重要。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

相关专题

更多
线程和进程的区别
线程和进程的区别

线程和进程的区别:线程是进程的一部分,用于实现并发和并行操作,而线程共享进程的资源,通信更方便快捷,切换开销较小。本专题为大家提供线程和进程区别相关的各种文章、以及下载和课程。

4218

2023.08.10

append用法
append用法

append是一个常用的命令行工具,用于将一个文件的内容追加到另一个文件的末尾。想了解更多append用法相关内容,可以阅读本专题下面的文章。

598

2023.10.25

python中append的用法
python中append的用法

在Python中,append()是列表对象的一个方法,用于向列表末尾添加一个元素。想了解更多append的更多内容,可以阅读本专题下面的文章。

1476

2023.11.14

python中append的含义
python中append的含义

本专题整合了python中append的相关内容,阅读专题下面的文章了解更多详细内容。

2564

2025.09.12

常用的数据库软件
常用的数据库软件

常用的数据库软件有MySQL、Oracle、SQL Server、PostgreSQL、MongoDB、Redis、Cassandra、Hadoop、Spark和Amazon DynamoDB。更多关于数据库软件的内容详情请看本专题下面的文章。php中文网欢迎大家前来学习。

4549

2023.11.02

内存数据库有哪些
内存数据库有哪些

内存数据库有Redis、Memcached、Apache Ignite、VoltDB、TimesTen、H2 Database、Aerospike、Oracle TimesTen In-Memory Database、SAP HANA和ache Cassandra。更多关于内存数据库相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

4095

2023.11.14

mongodb和redis哪个读取速度快
mongodb和redis哪个读取速度快

redis 的读取速度比 mongodb 更快。原因包括:1. redis 使用简单的键值存储,而 mongodb 存储 json 格式的数据,需要解析和反序列化。2. redis 使用哈希表快速查找数据,而 mongodb 使用 b-tree 索引。因此,redis 在需要高性能读取操作的应用程序中是一个更好的选择。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

7612

2024.04.02

redis怎么做缓存服务器
redis怎么做缓存服务器

redis 作为缓存服务器的答案:redis 是一款开源、高性能、分布式的键值存储,可作为缓存服务器使用。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

643

2024.04.07

Playwright 测试失败怎么办
Playwright 测试失败怎么办

Playwright测试失败专题汇集超时、定位器匹配、浏览器提前关闭、依赖与插件配置、文件上传、SSL及Docker启动等故障文章,并介绍通过截图、报告和Trace定位错误。

0

2026.10.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn