Rabbitmq主动/被动HA通过WAN

问题描述 投票:4回答:1

我正在尝试为RabbitMQ在两个数据中心之间提供灾难恢复。辅助数据中心是无源的,直到主DC发生故障。 队列联盟是不合适的,因为它不会在辅助DC中的消费者激活之前移动消息。除非主DC不可用,否则这种情况不可能发生。我考虑在主DC中创建一个额外的队列,它将接收每个消息的副本,然后使用Federation或Shovel将这些消息复制到辅助节点。然后,当处理主DC中的“原始”时,该问题将从辅助DC中移除重复消息。 将队列镜像到辅助DC中的节点将起作用,但RabbitMQ不会因延迟而在WAN上集群。还有其他人遇到过这种情况吗?谢谢。

rabbitmq high-availability wan active-passive
1个回答
0
投票

你非常雄辩地解释了使用Federation和Shovels尝试用RabbitMq解决DR的问题。 Rabbit实际上并不是设计用于通过WAN有效地移动数据。

通过WAN移动数据始终会给消息传递解决方案带来问题。例如,IBM MQ具有用于HA的多实例队列管理器,但需要SAN用于DR,这在产品和处理时间方面都变得昂贵。

您可以使用的另一种免费产品如Solace。它内置了HA和DR复制功能。它可以通过近乎实时地异步移动WAN上的每条消息来管理您描述的主动/被动被动DR场景。只要您准备好将应用程序流量移动到备份DC,就可以激活备份实例并开始使用消息。当它从活动端消耗时,它会自动“删除重复的消息”。

© www.soinside.com 2019 - 2024. All rights reserved.