RabbitMQ优化消息阻塞系列(三)架构调整

架构调整

1. 背景

最开始的RabbitMQ架构是主备模式,支持的并发和数据量不高。现决定部署一套采用镜像模式的集群架构,提升并发性能,但怎么从旧架构平滑切换到新架构成了首要问题。

2. 平滑切换方案

在这里插入图片描述

2.1 额外加载新增MQ配置

服务A原本加载的是mq主备配置,为了平滑过渡,额外加载mq镜像配置,这两份配置的区别就只是ip、端口、vhost、账号、密码不同,其他譬如交换器、队列的配置都相同。

2.2 分批次平滑切换队列

按队列的重要级别梳理出若干批队列,第一次先切换优先级低的队列到MQ镜像集群,观察数据流入情况。待稳定后,再切换下一批,直至所有队列都切换到MQ镜像集群。

2.3 遇到的坑

之前MQ主备上有些队列未开启持久化,但MQ镜像这边是需要为所有队列配置持久化的,当开启自动生成队列信息且项目启动的时候,MQ镜像这边会生成与MQ主备相同的队列,也就是未开启持久化的队列。

<!--通过指定下面的admin信息,当前producer中的exchange和queue会在rabbitmq服务器上自动生成 -->
<rabbit:admin connection-factory="connectionFactory"/>

原因推测该管理类是单例,共用同一份数据。所以当加载多份MQ配置文件时,记得配置去掉自动生成的标签,手动到RabbitMQ的配置中心创建交换器、队列信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值