RabbitMQ 高可用实现镜像队列
队列机制,将 queue 镜像到 cluster 中其他的节点之上。在该实现下,如果集群中的一个节点失效了,queue 能自动地切换到镜像中的另一个节点以保证服务的可用性。 在通常的用法中,针对每一个镜像队列都包含一个 master 和多个 slave,分别对应于不同的节点。slave 会准确地按照 master 执行命令的顺序进行命令执行,故slave 与 master 上维护的状态应该是相同的。除了 publish 外所有动作都只会向master 发送,然后由 master 将命令执行的结果广播给 slave 们,故看似从镜像队列中的消费操作实际上是在 master 上执行的。 一旦完成了选中的 slave 被提升为 master 的动作,发送到镜像队列的 message 将不会再丢失...阅读全文