IoT 设备上的 RabbitMQ 集群

RabbitMQ cluster on IoT devices

我正在设计带有板载计算机的物联网系统,例如raspberry pi。 特别是,我正在设计支持 pub-sub、esb 等的应用程序消息传递平台。

为了简单易行,我正在考虑使用rabbitmq。 此外,我想在这些节点上构建rabbitmq集群,以避免SPoF。

但是,这些设备有时会被关闭。 我认为这意味着一个节点暂时离开集群。 我希望rabbitmq集群在一定程度上假设这种情况,但我无法假设它能够接受多少,会出现什么问题。

rabbitmq集群专家, 你能告诉我关于它的任何疑虑,以及我们应该关心的案例吗? 你认为它在生产中有用吗? 请告诉我任何与我的假设相似的情况。

非常期待您的回复。 就算是小东西,对我来说也很好。


TL;DR RabbitMQ 在这种情况下效果不佳。最好用别的东西。

RabbitMQ 旨在与稳定节点一起工作,它使用 Raft 算法实现分布式共识并选举其领导者(参见 http://thesecretlivesofdata.com/raft)。正如我们可以通过这种方法观察到的,选举领导者的过程由几个步骤组成。如果网络被分区或领导者失败,则必须选举另一个领导者。如果经常出现这种情况,整个网络都会不稳定。

也许您可能想看看其他技术,例如 https://deepstream.io