【问题标题】:Distributed Application using Zookeeper使用 Zookeeper 的分布式应用程序
【发布时间】:2014-06-05 17:27:03
【问题描述】:

我需要使用 zookeeper 设计分布式应用程序。这是我第一次使用 Zookeeper,所以我对它的用法有点困惑。我已经读过 Zab 协议在多次更新时确保可串行化,但我无法理解,如果是这种情况,它将自动允许无锁实现。那么为什么首先需要锁呢? 如果有人可以在这里提供帮助,那就太好了。

谢谢

【问题讨论】:

  • 你能澄清一下你到底想要实现什么,你看到 Zookeeper 有什么问题吗?另请参阅this question 和我的other answer 对另一个问题的回答,看看这是否阐明了 Zookeeper 的用法。
  • 谢谢 Misha。我想我得到了答案。

标签: hadoop concurrency apache-zookeeper distributed-transactions locks


【解决方案1】:

Zab 协议是 zookeeper 的关键部分。它确保消息的原子广播到副本。 Zab 协议确保可串行化,但可串行化的概念仅确保将原子数据传递给单个应用程序。 Apache 使用该协议在 zookeeper 中实现原子广播。

Zookeeper 用于分布式服务协调。在一个有 n 个进程正在协调的系统中,为了维持特定的执行顺序,我们需要分布式锁。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-26
    • 1970-01-01
    • 2011-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多