我们知道客户可能会从zk群集中获取旧数据。
但是作为同一客户端,当客户端更新znode数据并第二次获取数据时,它仍然是旧数据吗?我想会的。
例如,有一个主节点,follow1,follow2,follow3。 Client1连接到follow1,然后client1更新数据。 follow1将事务发送到主服务器,主服务器将事务发布到所有后续服务器。 follow2和follow3已成功提交,但follow1未确认。主人将响应成功给client1。之后,client1从follow1中获取数据,这时将获取旧数据。
在这种情况下,我们如何确保zk的数据正确性?