服务器安装三节点RabbitMQ集群(2)

  • 普通模式:默认的集群模式,以两个节点(1、2)为例来进行说明。对于Queue来说,消息实体只存在于其中一个节点1(或者2),1和2两个节点仅有相同的元数据,即队列的结构。当消息进入1节点的Queue后,consumer从2节点消费时,RabbitMQ会临时在1、2间进行消息传输,把1中的消息实体取出并经过2发送给consumer。所以consumer应尽量连接每一个节点,从中取消息。即对于同一个逻辑队列,要在多个节点建立物理Queue。否则无论consumer连1或2,出口总在1,会产生瓶颈。当1节点故障后,2节点无法取到1节点中还未消费的消息实体。如果做了消息持久化,那么得等1节点恢复,然后才可被消费;如果没有持久化的话,就会产生消息丢失的现象。
  • 镜像模式:将需要消费的队列变为镜像队列,存在于多个节点,这样就可以实现RabbitMQ的HA高可用性。作用就是消息实体会主动在镜像节点之间实现同步,而不是像普通模式那样,在consumer消费数据时临时读取。缺点就是,集群内部的同步通讯会占用大量的网络带宽。

    <<< 前面已经安装好了三节点的普通集群,镜像集群在普通集群的基础上添加策略即可。

如下图所示

按照上面方式添加策略,然后应用即可

  1. name:策略名称,随意命名,比如我这里填yue
  2. pattern:为匹配符,只有一个^代表匹配所有,^lzb为匹配名称为lzb的exchanges或者queue,这里我设置为匹配全部
  3. apply to:应用对象
  4. Priority:配置了多个策略时候的优先级,值越大,优先级越高。(单个策略配置意义不大)
  5. 注意:没有指定优先级的消息会将优先级以0对待。 对于超过优先级队列所定最大优先级的消息,优先级以最大优先级对待
  6. Definition: 为匹配类型,他分为3种模式:all-所有(所有的queue),exctly-部分(需配置ha-params参数,此参数为int类型比如3,众多集群中的随机3台机器),nodes-指定(需配置ha-params参数,此参数为数组类型比如["3rabbit@F","rabbit@G"]这样指定为F与G这2台机器。)

测试一下策略是否生效

我添加一个queue,

可以看到有个蓝色的框,+2,鼠标放上面,显示同步到另外两个节点2、3,说明策略生效


over

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值