rocketmq实现多数据源配置

rocketmq实现多数据源配置

    • 背景:
    • 一 添加@ExtRocketMQTemplateConfiguration配置类
    • 二 添加非标mq的配置参数
    • 三 非标准RocketMQTemplate

背景:

在实际项目中我们可能会遇到在springboot项目中使用多个mq数据源,那我们该如何配置呢?
我们可以基于ExtRocketMQTemplateConfiguration 扩展出其他的rocketmq 数据源,相当于注入多个rocketTemplate, 只是nameServer 和 beanName 不同

一 添加@ExtRocketMQTemplateConfiguration配置类

该非标准RocketMQTemplate类只需要集成RocketMQTemplate就行,然后再加上@ExtRocketMQTemplateConfiguration注解,并配置nameServer即可。

package com.wxl52d41.rocketmq.config;import org.apache.rocketmq.spring.annotation.ExtRocketMQTemplateConfiguration;
import org.apache.rocketmq.spring.core.RocketMQTemplate;/*** @date 2022/4/19 16:17* @description 相当于多数据源,指定其他的nameServer。 使用的使用直接注入该对象即可*/
@ExtRocketMQTemplateConfiguration(nameServer = "${rocketmqB.name-server}",group = "${rocketmqB.producer.group}")
public class ExtRocketMQTemplate extends RocketMQTemplate {
}

二 添加非标mq的配置参数

yml配置中添加非标mq的配置参数
在这里插入图片描述

rocketmq:name-server: 101.200.240.47:9876producer:group: producer-demo1
rocketmqB:name-server: 101.200.240.39:9876producer:group: producer-demoB

三 非标准RocketMQTemplate

如何使用该非标准RocketMQTemplate?只需要在发送消息的类中通过@Resource注入进来,并通过name属性来指定即可使用。下面我有具体的使用案例。

   @Autowiredprivate RocketMQTemplate rocketMQTemplate;/*** 如果使用其他数据源的rocketTemplate,需要指定名称*/@Resource(name = "extRocketMQTemplate")private RocketMQTemplate extRocketMQTemplate;@Testpublic void extRocketMQTemplateConvertAndSendTest() {extRocketMQTemplate.convertAndSend("springboot-mq", "hello springboot rocketmq");rocketMQTemplate.convertAndSend("springboot-mq", "hello springboot rocketmqa");}

在这里插入图片描述

SpringBoot集成RocketMQ4.5

RocketMQ(九)RocketMQ分布式事务实现
RocketMQ专栏

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/39352.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于若依(ruoyi-vue)的周报管理系统

喂wangyinlon 填报人页面 审批人 审批不通过,填报人需要重新填写.

自动编码器简单理解及简单使用描述

1. 什么是自动编码器? 自动编码器分为编码器和解码器,其中解码器只在训练阶段用到。具体过程就是: 首先,输入训练样本,编码器对输入样本进行编码,对其进行降维,直到到达某个瓶颈层&#xff1b…

2024年江西省研究生数学建模竞赛B题投标中的竞争策略问题论文和代码分析

2024年江西省研究生数学建模竞赛B题投标中的竞争策略问题论文和代码已完成,代码为B题全部问题的代码,论文包括摘要、问题重述、问题分析、模型假设、符号说明、模型的建立和求解(问题1模型的建立和求解、问题2模型的建立和求解、问题3模型的建…

oracle体系结构详解(实例+数据文件)

提示:主要总结oracle数据库:物理结构,逻辑结构,内存结构以及oracle进程 文章目录 Oracle服务器由(实例和数据库文件组成)1、实例2、数据文件1.oracle物理体系结构2.oracle数据库逻辑结构3oracle数据库内存结…

如何通过指纹浏览器使用代理IP?

1.指纹浏览器定义 指纹浏览器是 一种浏览器技术,它根据用户设备的硬件、软件和配置等特征生成唯一标识符(称为“指纹”)。此指纹用于识别和追踪用户身份,即使用户更改其 IP 地址或清除浏览器数据(如缓存和 Cookie&…

AI生成商品图软件哪个好用

🌟 AI生成商品图软件哪个好用 —— 触站AI🚀 🎨在AI技术的浪潮中,触站AI以其专业和创新,成为广州AI设计服务的领军企业。 专注于企业AI图像领域的技术解决方案,触站AI提供包括AI绘画模型训练、AI绘图模型定…

HBM是什么?因AI而崛起,它有哪些优势?

南韩存储大厂SK海力士宣布,将与台积电公司密切合作,联手生产下一代HBM——即预计在2026年投产的第六代HBM产品HBM4,双方并于近期签署合作备忘录(MOU)。 SK海力士以往的HBM产品,包括HBM3E(第五代…

python本学期所有代码!

第一单元 ----------------------------------------------------------------------- #圆面积的计算 radius 25 area 3.1415 * radius * radius print(area) print("{:.2f}".format(area)) --------------------------------------------------------------------…

昇思25天学习打卡营第1天|yulang

今天主要了解了深度学习框架之昇思MindSpore的初学入门,没想到 ai学习入门如此简单,不愧是华为大手笔,提供的学习环境配置如此之高。这个平台有点类似百度飞桨,大大降低了AI开发门槛,使用户能够快速实现想要的模型&…

Hadoop3:Yarn的Tool接口案例

一、需求 依然以wordcount案例为基础,进行开发 我们知道,用hadoop自带的example.jar执行wordcount 命令如下 hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount -D mapreduce.job.queuename…

如何选择品牌推广公司?哪家好?收费标准及评价!

不管是什么品牌,推广对公司的成败起了很关键的作用。然而,面对市面上琳琅满目的品牌推广公司,如何选择一家既熟悉又靠谱的公司,成为许多企业主面临的难题。 作为一家手工酸奶品牌的创始人,目前全国也复制了100多家门店…

深度探索“目录名称无效“:原因、解决方案与最佳实践

目录名称无效:现象背后的秘密 在日常使用电脑或移动设备时,我们时常会遇到“目录名称无效”的错误提示,这一提示仿佛是一道无形的屏障,阻断了我们与重要数据的联系。从本质上讲,“目录名称无效”意味着系统无法识别或…

Windows下快速安装Open3D-0.18.0(python版本)详细教程

目录 一、Open3D简介 1.1主要用途 1.2应用领域 二、安装Open3D 2.1 激活环境 2.2 安装open3d 2.3测试安装是否成功 三、测试代码 3.1 代码 3.2 显示效果 一、Open3D简介 Open3D 是一个强大的开源库,专门用于处理和可视化3D数据,如点云、网格和…

Android原生与flutter模块交互

Flutter定义了三种不同类型的Channel: BasicMessageChannel:用于传递字符串和半结构化的信息,持续通信,收到消息后可以回复此次消息,如:Native将遍历到的文件信息陆续传递到Dart,在比如&#xf…

无法下载 https://mirrors./ubuntu/dists/bionic/main/binary-arm64/Packages

ubuntu系统执行sudo apt update命令的时候,遇到如下问题: 忽略:82 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/universe arm64 Packages 错误:81 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-backports/main arm64 Packa…

springboot数字化医院产科系统源码

目录 一、系统概述 二、开发环境 三、功能设计 四、功能介绍 一、系统概述 数字化产科是为医院产科量身定制的信息管理系统。它管理了孕妇从怀孕开始到生产结束42天一系列医院保健服务信息。该系统由门诊系统、住院系统、数据统计模块三部分组成,与医院HIS、LI…

VMware Mac/Win 虚拟机软件介绍

VMware作为全球领先的虚拟化技术提供商,其Mac/Win虚拟机软件为用户带来了前所未有的跨平台操作体验。这款软件凭借其强大的功能和稳定的性能,成为了众多开发者、设计师、企业用户以及个人用户的首选工具。 强大的多操作系统支持 VMware Mac/Win 虚拟机…

轻松创建对象——简单工厂模式(Python实现)

1. 引言 大家好,又见面了!今天我们要聊的是设计模式中的“万能钥匙”——简单工厂模式。想象一下,如果每次你都得亲自动手创建各种对象,不仅累得像个陀螺,还可能搞得一团糟。别怕,简单工厂模式来拯救你&am…

2024年创业新商机组合拳“消费增值+二二复制”引流拓客新思路

文丨微三云胡佳东,点击上方“关注”,为你分享市场商业模式电商干货。 - 引言:2024年各行各业面临企业经营瓶颈难的一年,国家也陆续推出了《关于打造消费新场景培育消费新增长点的措施》都是为了培育和壮大消费新增长点&#xff…

怎样恢复数据?电脑数据恢复方法详解!

在日常使用电脑或移动设备时,我们难免会遇到数据丢失的情况,如误删除文件、存储设备故障等。数据恢复成了许多人迫切需要解决的问题。本文将为您介绍几种高效的数据恢复方法,帮助您轻松找回丢失的文件。 一、了解数据丢失的原因 在恢复数据…