From ea271cfb7f94b017543f03289336ceaf65e14e1e Mon Sep 17 00:00:00 2001 From: suyua9 <1521777066@qq.com> Date: Fri, 3 Apr 2026 23:29:13 +0800 Subject: [PATCH] docs: correct appendfsync always description Signed-off-by: suyua9 <1521777066@qq.com> --- docs/database/redis/redis-common-blocking-problems-summary.md | 2 +- docs/database/redis/redis-questions-02.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/database/redis/redis-common-blocking-problems-summary.md b/docs/database/redis/redis-common-blocking-problems-summary.md index 95041edee60..1caf2e267b2 100644 --- a/docs/database/redis/redis-common-blocking-problems-summary.md +++ b/docs/database/redis/redis-common-blocking-problems-summary.md @@ -68,7 +68,7 @@ Redis AOF 持久化机制是在执行完命令之后再记录日志,这和关 在 Redis 的配置文件中存在三种不同的 AOF 持久化方式( `fsync`策略),它们分别是: -1. `appendfsync always`:主线程调用 `write` 执行写操作后,后台线程( `aof_fsync` 线程)立即会调用 `fsync` 函数同步 AOF 文件(刷盘),`fsync` 完成后线程返回,这样会严重降低 Redis 的性能(`write` + `fsync`)。 +1. `appendfsync always`:主线程调用 `write` 执行写操作后,会立刻调用 `fsync` 函数同步 AOF 文件(刷盘)。主线程会阻塞,直到 `fsync` 将数据完全刷到磁盘后才会返回,这样会严重降低 Redis 的性能(`write` + `fsync`)。 2. `appendfsync everysec`:主线程调用 `write` 执行写操作后立即返回,由后台线程( `aof_fsync` 线程)每秒钟调用 `fsync` 函数(系统调用)同步一次 AOF 文件(`write`+`fsync`,`fsync`间隔为 1 秒) 3. `appendfsync no`:主线程调用 `write` 执行写操作后立即返回,让操作系统决定何时进行同步,Linux 下一般为 30 秒一次(`write`但不`fsync`,`fsync` 的时机由操作系统决定)。 diff --git a/docs/database/redis/redis-questions-02.md b/docs/database/redis/redis-questions-02.md index 7e68719b9c8..d8fa2c3378a 100644 --- a/docs/database/redis/redis-questions-02.md +++ b/docs/database/redis/redis-questions-02.md @@ -163,7 +163,7 @@ Redis 不同于 Memcached 的很重要一点就是,Redis 支持持久化,而 与 RDB 持久化相比,AOF 持久化的实时性更好。在 Redis 的配置文件中存在三种不同的 AOF 持久化方式(`fsync` 策略),它们分别是: ```bash -appendfsync always #每次有数据修改发生时,都会调用fsync函数同步AOF文件,fsync完成后线程返回,这样会严重降低Redis的速度 +appendfsync always #每次有数据修改发生时,主线程都会立刻调用fsync函数同步AOF文件,并阻塞到刷盘完成后才返回,这样会严重降低Redis的速度 appendfsync everysec #每秒钟调用fsync函数同步一次AOF文件 appendfsync no #让操作系统决定何时进行同步,一般为30秒一次 ```