使用 WAIT 命令提高数据安全性和持久性
使用 wait 命令可充分利用 Redis Enterprise Software 基于复制的持久性。
Redis 企业软件 |
---|
Redis Enterprise Software 具有复制数据的能力
添加到另一个副本以实现高可用性,并将内存中数据持久化
disk 的持久性。使用WAIT
命令,您可以
控制复制和
持久化数据库。
非阻塞 Redis 写入作
向数据库发出的任何更新通常使用以程执行:
- 应用程序发出写入。
- Proxy 与系统中包含给定键的正确主分片通信。
- 写入作完成后,确认将发送到 proxy。
- 代理将确认发送回应用程序。
独立地,写入从主分片传送到副本,并且 复制确认写回主分片。这些是步骤 5 和 6。
独立地,对副本的写入也会持久化到磁盘,并且 在副本中确认。这些是步骤 7 和 8。

阻止复制写入作
使用WAIT
或WAITAOF
命令,应用程序可以要求等待
仅在确认复制或持久性后确认
副本。写入作流程WAIT
或WAITAOF
是:
- 应用程序发出写入。
- 代理与系统中包含给定键的正确主分片通信。
- 复制将更新传达给副本分片。
- 如果使用
WAITAOF
和 AOF every write 设置时,副本会在发送确认之前将更新保存到磁盘。 - 确认通过步骤 5 到 8 从副本一直发送回代理。
应用程序只有在通过复制到副本实现持久性后,才会从写入中获得确认WAIT
或WAITAOF
以及 持久存储WAITAOF
只。

这WAIT
command 始终返回确认当前客户端发送的写入命令的副本数,这些副本数在WAIT
命令,无论是在达到指定副本数的情况下,还是在达到超时时。在 Redis Enterprise Software 中,对于启用了高可用性的数据库,副本数始终为 1。
请参阅WAITAOF
命令,详细了解 Redis 7.2 中引入的增强数据安全性和持久性功能。