美文网首页
RabbitMQ的集群高可用

RabbitMQ的集群高可用

作者: 奔跑的Robi | 来源:发表于2019-08-02 16:22 被阅读0次

    RabbitMQ在高可用性上主要有三种方式:

    普通集群模式:

    在多台机器上启动多个MQ实例,其中一台上存放queue的元数据和消息,其他的实例从这个实例上拉取数据。
    这种方式不存在高可用性,当存放queue和消息的节点挂调的时候,整个就玩完了。这种设计仅仅是增加一下MQ的吞吐量。带来的缺点就是在集群内部会产生大量的数据传输。

    镜像集群模式

    所谓镜像就是将queue和消息内容在每一个节点上都拷贝一份,每个节点上的数据都完全一样,这样挂了任何一个节点都可以从另一个节点上获取数据。以此实现高可用的特性。但是缺点就是

    • 每个机器上都存放所有的queue,本身就没有分布式可言,对于queue数量是没法线性拓展的。
    • 另一个是生产者每一次发送消息到MQ,都要执行节点间的数据拷贝,这样带来的网络开销也是非常大的。另外节点之间的数据拷贝是否完整,如何保证。

    相关文章

      网友评论

          本文标题:RabbitMQ的集群高可用

          本文链接:https://www.haomeiwen.com/subject/gswldctx.html