【问题标题】:Use of gossip protocol in Erlang cluster management在 Erlang 集群管理中使用 gossip 协议
【发布时间】:2015-11-19 22:44:26
【问题描述】:

我是 Erlang 以及分布式计算的新手。我们是一个小团队,正在尝试构建一个小型消息服务器。我们正在研究如何管理集群状态的一件事 - 我们在 Erlang 开源项目中遇到了一些自定义实现,例如 Riak、rabbitMq、ejabbered 和 Vernemq。

似乎 Erlang 社区正在转向使用 gossip 协议进行集群管理 - 我看到最近关于 RabbitMQ 的帖子 (https://groups.google.com/forum/#!searchin/rabbitmq-users/gossip$20protocol/rabbitmq-users/jvQQy30kLTI/hIDFw94SddQJ

我的问题是 - 除了 gossip 协议之外,还有其他方法可以进行集群管理吗?还有什么是八卦协议的开源erlang实现。在考虑 erlang 节点管理时需要考虑哪些因素?

感谢您的帮助。

【问题讨论】:

    标签: erlang protocols cluster-computing gossip


    【解决方案1】:

    我也不是分布式计算专家,所以我的回答可能有问题,但无论如何。 一切都取决于您的集群状态是什么以及您有什么要求。

    如果你必须保证每个集群参与者之间状态的一致性,你最终会得到某种分布式共识机制,比如 zk、paxos 或 raft。

    如果您需要高可用性,您将需要一些基于 gossip 的协议,并让您的应用意识到可能的数据不一致(就像 Riak 对它的 CRDT 数据类型和矢量时钟所做的那样)。

    如果您不知道自己需要什么,我会选择第一个选项,因为从开发人员的角度来看这很容易。如果我清楚地理解第一个选项不再是一个选项,我会选择第二个选项;)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-18
      • 1970-01-01
      • 2017-02-09
      • 2017-02-13
      • 2012-10-24
      • 2017-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多