RabbitMQ服务器(代理)而不是使用者(客户端)的负载平衡

时间:2018-12-22 18:29:15

标签: rabbitmq message-queue amqp infrastructure rabbitmq-exchange

在此示例中,我的网络中设置了2个使用者和2个发布者。中心是RabbitMQ经纪人,如下面的屏幕快照所示。由于故障安全的原因,我想知道RabbitMQ是否以任何方式支持服务器(代理)的负载平衡或镜像。我只想摆脱星型拓扑有两个原因:

1) If one broker fails, another publisher can take over immediately

2) If one brokers network throughput is not good enough the other takes over

解决其中一个(或什至两者)会很棒。

我当前的基础架构 enter image description here

首选的基础架构 enter image description here

1 个答案:

答案 0 :(得分:1)

RabbitMQ群集(docs)可以满足您的第一个要求。使用三个节点,并确保对您的应用程序进行编码和测试,以考虑到故障情况。

我不知道有什么现成的可以满足您第二个要求的东西。由于吞吐量较低,您将必须实现一些使用群集统计信息或应用程序统计信息来确定何时切换到另一个群集的方法。


注意: RabbitMQ团队监视the rabbitmq-users mailing list,并且有时仅在StackOverflow上回答问题。