【发布时间】:2015-10-20 14:49:06
【问题描述】:
我需要在不同数据库之间同步表。因此,我想设置一个高可用性的 RabbitMQ 集群。没有消息丢失非常重要,因为它会导致异步表。
正如您在此处看到的,这种方法有一个关键的失败点。如果由于某种原因无法访问负载均衡器,则发送方无法将消息发送到 RabbitMQ 队列。
可能的选择是:
- 将所有节点添加到您的应用程序中并循环访问它们,直到找到一个可以工作的节点。
- 在所有网络服务器节点上安装软件负载平衡器(如 HAProxy),以解析到正常工作的 RabbitMQ 节点。
我对这两种解决方案都不满意。也许有人对此特定主题有更好的想法或进一步阅读?
我想在 php 中使用 RabbitMQ。知道这个问题不应该很重要,但也许有人知道 PHP 特定的答案。
【问题讨论】:
标签: php rabbitmq load-balancing high-availability