【问题标题】:Curator TreeCache eventual consistencyCurator TreeCache 最终一致性
【发布时间】:2017-01-31 01:25:04
【问题描述】:

使用 Curator TreeCache 时。我了解无法保证缓存状态与领导者保持同步,并且可能会错过创建/更新/删除事件 (Zookeeper missed events on successive changes)。 然而,据我了解 - TreeCache 将最终保持一致。 问题是:是否定义了将 ZK 节点中的更改传播到 TreeCache 实例的最大(保证)时间?

【问题讨论】:

    标签: apache-zookeeper apache-curator


    【解决方案1】:

    不,没有最长时间。注意:这与 TreeCache 无关,它只是 ZooKeeper 的工作方式。在内部,所有写入操作都通过 ZK 集成中的当前领导节点。 “追随者”节点最终与领导者的数据库同步。实际上,这最多只需要几秒钟,但当然,这完全取决于您的数据库大小、网络、运行中的操作数量等。

    更新:请注意,您使用 syncLimit 配置 ZK 实例,它指定了您的 ensemble 的最大数据库同步。超过 syncLimit 时 ZooKeeper 将超时。见这里:https://zookeeper.apache.org/doc/trunk/zookeeperAdmin.html

    【讨论】:

    • 那么follower超过syncLiimit就会失败?在这种情况下,可以说没有追随者可以得到超过 syncLimit 落后。这不是保证吗?显然,我知道需要额外的时间将数据从 Follower 发送到 TreeCache 或如果客户端连接到的跟随者失败,则重新连接到另一个跟随者。
    • 如果同步超过 syncLimit,实例将失败并从 ensemble 中删除。
    猜你喜欢
    • 2015-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-11
    • 2018-12-13
    相关资源
    最近更新 更多