我有一个 redis 服务器实例,它是主 redis 服务器实例的副本。我还有一个 python3 脚本,它使用 redis 库来查询副本实例。
但是,该脚本还尝试使用 SET 插入数据。我不确定是否插入成功。
在副本上使用 SET 时会发生什么?我的理解是副本应该复制redis-server实例的数据,所以我只能想象三种可能的行为
我找不到关于这个问题的任何文档,而且这三种行为似乎都是合理的。如果您知道这种行为是什么,您能解释一下为什么会出现这种情况而不是其他两种情况吗?
它是否会将您的 SET 命令传递到主 redis 服务器实例?
不
它会保留您的数据但仅在本地吗?
这要看情况。
replica-read-only no
,它将接受写操作,并将数据保存在本地。但是,当与master同步时,master的副本将覆盖它。replica-read-only yes
,它将拒绝写入操作。它会忽略你的 SET 命令吗?
不。它要么接受,要么拒绝,并返回错误回复。