SpringBoot2.0之整合ActiveMQ(发布订阅模式)

SpringBoot整合ActiveMQ消息队列和双向队列、点对点与发布订阅 SpringBoot整合ActiveMQ消息队列和双向队列、点对点与发布订阅,可以参考我的博客文章进行学习https://blog.csdn.net/sujin_/article/details/82956386 立即下载

SpringBoot2.0之整合ActiveMQ(发布订阅模式)

发布订阅模式与前面的点对点模式很类似,简直一毛一样

 

注意:发布订阅模式 先启动消费者

公用pom:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.toov5</groupId>
  <artifactId>springboot-topic-producer</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
    </parent>
    <!-- 管理依赖 -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Finchley.M7</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
        <!-- SpringBoot整合Web组件 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- SpringBoot Activemq -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-activemq</artifactId>
        </dependency>
    </dependencies>
    <!-- 注意: 这里必须要添加, 否者各种依赖有问题 -->
    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/libs-milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>
</project>

 与上一篇博客类似的:改改就欧克了 猜猜都知道该怎么玩

 

 yml:

spring:
  activemq:
    broker-url: tcp://192.168.91.6:61616
    user: admin
    password: admin
my_topic: springboot-topic-toov5
server:
  port: 8081

  config

package com.toov5.config;

import javax.jms.Topic;

import org.apache.activemq.command.ActiveMQTopic;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;

@Component
public class ConfigQueue {
   @Value("${my_topic}")
   private String myTopic;
    
    //首先将队列注入到SpringBoot容器中去
    @Bean
    public Topic queue() {
        return new ActiveMQTopic(myTopic);
    } 
    
}

producer

package com.toov5.topicProducer;

import javax.jms.Topic;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsMessagingTemplate;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
public class TopicProducer {
    @Autowired
    private JmsMessagingTemplate jmsMessagingTemplate;
    //把队列注入进来 
    @Autowired  //此注解默认是以类型找  在配置文件中 已经注入的  @Bean 
    private Topic topic;
    
    //每隔5s时间向队列发送消息
    @Scheduled(fixedDelay=5000)  //每间隔2s向队列发送消息
    public void send() {
        String msgString = System.currentTimeMillis()+" ";
        jmsMessagingTemplate.convertAndSend(topic,msgString);
        System.out.println("发布订阅通讯,msg"+msgString);
    }
}

 

创建producer maven

SpringBoot 默认开启点对点的!!!! 订阅模式需要手动!!!!!

yml中: 

#### 开启发布订阅
jms:
pub-sub-domain: true

 

yml:

spring:
  activemq:
    broker-url: tcp://192.168.91.6:61616
    user: admin
    password: admin
my_queue: springboot-queue-toov5
server:
  port: 8080  

 consumer

package com.toov5.activemqConsumer;

import org.springframework.jms.annotation.JmsListener;
import org.springframework.stereotype.Component;

@Component
public class P2PConsumer {
   
    @JmsListener(destination= "${my_queue}")    //用这个注解去监听 监听的队列
    public void receiver(String msg) {
        System.out.println("消费者成功获取到生产者的消息,msg"+msg);
    }
    
    
}

启动类

package com.toov5.activemqConsumer;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class AppConsumer {

    public static void main(String[] args) {
        SpringApplication.run(AppConsumer.class, args);
    }
    
}

 

 先启动消费者 然后启动生产者,多开几个端口玩玩集群~

 

基于SpringBoot开发的ActiveMQ虚拟主题客户端(包含发布者和订阅者) 基于SpringBoot开发的ActiveMQ虚拟主题客户端,达到消费者多点消费、负载均衡和故障转移的目的。 详情可以参考这里: https://my.oschina.net/noryar/blog/1573047 https://my.oschina.net/noryar/blog/1575003 立即下载

相关推荐

spring+activemq topic持久化订阅

spring +activemq topic消息持久化订阅实例,整个项目中有activemq和spring的整合的所有实例,topic的持久化配置是在ApplicationContext3C、ApplicationContext3C2以及ApplicationContext3P三个中,消息生产者:QueueProducer 、消息消费者1:SimpleJMSReceiver 消息消费者2:SimpleJMSReceiver2

SpringBoot+ActiveMQ-发布订阅模式(生产端)

SpringBoot+ActiveMQ-发布订阅模式(生产端) Topic 主题 * 消息消费者(订阅方式)消费该消息 * 消费生产者将发布到topic中,同时有多个消息消费者(订阅)消费该消息 * 这种方式和点对点方式不同,发布到topic的消息会被所有订阅者消费 * 当生产者发布消息,不管是否有消费者,都不会保存消息,如果对订阅消息提前做了持久化操作,还是可以收到的

蚂蚁舞 1009

国产麒麟系统中的PaddleOCR离线绿色部署:高效安全的文字识别新纪元

摘要:本文详细介绍了PaddleOCR在银河麒麟V10SP1系统上的离线部署方案。通过Conda虚拟环境隔离依赖,采用离线包安装方式实现无网络部署,支持80+语言识别。重点讲解了模型量化剪枝优化、多线程处理等性能调优技巧,并提供了完整的OCR识别代码示例。该方案具有数据本地化处理的安全优势,适用于医疗票据数字化等对隐私要求严格的场景,同时解决了模型加载失败、内存不足等常见问题。

墨夶的博客 1228

SpringBoot整合ActiveMQ:实现发布-订阅

ActiveMQ 发布-订阅 基础 引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-activemq</artifactId> </dependency> <d...

缘来阁 498

Lmbench测试集 --- 延迟测试工具lat_mem_rd

lmbench测试集简介 以及 lat_mem_rd延迟测试工具: 如何测试、测试结果、源码分析

MonologueYY的博客 1万+

【光学仿真】基于Matlab的LG/BG/PV/HG光束生成与特性分析【附完整源码】

本文详细介绍了如何使用Matlab进行拉盖尔-高斯(LG)、贝塞尔-高斯(BG)、完美涡旋(PV)和厄米-高斯(HG)四种特殊光束的仿真与特性分析。通过提供完整的Matlab源码,手把手指导读者生成光束、分析其强度、相位、传播特性及轨道角动量,为光学研究、激光应用及教学提供了直观高效的数值实验平台。

3a9bq4r8t2y的博客 492

springboot 整合activemq 消息发布和订阅

1.maven依赖 <!--activemq的依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-activemq&lt...

梦醒了该散了的博客 7549

声品质粗糙度matlab,声品质的应用分析方法

声品质的应用分析方法2016-04-05 09:18:57阅读次数:14198摘要:声品质分析在噪声的主观评价方面已经得到越来越多的应用。本文比较了声品质分析与传统计权声级的区别,并介绍了在声品质分析的实际应用中,针对稳态信号、非稳态信号的几种不同分析方法,以及各分析方法的要求和特点。关键词:声品质,响度,尖锐度,粗糙度,波动度1前言传统评价噪声的方法主要为计权声压级,用以反映声音的大小。但是人耳...

weixin_30767323的博客 2438

Spring+ActiveMQ消息持久化,Topic持久化订阅

消息持久化就是将消息保存到磁盘,这样的好处就是如果服务挂了,则消息还保存在磁盘不会丢失,服务起来后还能找到消息并在此发送,消息的持久化和消息的发送模型是没有关系的。 消息持久化的配置很方便的,所以其他的那些就不写出来了,可以看看上一篇文章中的同步异步实现方式。这里只把持久化配置的列出来。 [html] view plain copy  print?

极客on之路 6410

太美了!现代女主jk海军风穿搭四视图

哪个女孩子初高中的时候不买几套JK衣服啊,穿上完全是青春女孩。那还愣着干啥,不得也给你的漫剧女主也穿上!直接就是分享三套JK穿搭,红棕双麻花辫配经典水手服,是那种乖乖巧巧的元气学妹;粉色羊毛卷双马尾,搭配蝴蝶结和小挎包甜度直接拉满;还有灰棕色侧麻花辫,浅蓝上衣配黑色百褶裙,温柔里又带点小酷。下面把这三套角色的完整提示词分享出来,喜欢哪套就拿去参考,改改发型和配色,还能继续解锁新角色!

欢迎来到鸾姝淡月博客,专为程序员和编程爱好者打造的技术博客。我们分享编程语言趋势、开发工具、编程哲学、职业发展等,助你掌握新技术,优化技能,激发编程热情。 53

《ESP32单片机基础入门》第2章:开发环境搭建

【代码】《ESP32单片机基础入门》第2章:开发环境搭建。

2301_79143213的博客 582

springboot集成activemq实现发布订阅

springboot集成activemq实现消息的发布和订阅,首先导包: <!-- activemq消息队列通讯--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-...

sipengfei_的博客 759

R语言使用survminer包的ggcompetingrisks函数可视化竞争风险的累积事件曲线、使用可视化对象的mapping属性自定义修改、配置颜色分组及线条类型

R语言使用survminer包的ggcompetingrisks函数可视化竞争风险的累积事件曲线、使用可视化对象的mapping属性自定义修改、配置颜色分组及线条类型

data+scenario+science+insight 1380

SpringBoot2.0之整合ActiveMQ【发布订阅模式】

发布订阅模式与前面的点对点模式很类似,简直一毛一样 注意:发布订阅模式 先启动消费者 公用pom: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven...

art_code的博客 168

姿态传感器/陀螺仪之LSM6DS3TR-C应用原理图设计

LSM6DS3TR-C是一款由意法半导体(STMicroelectronics)推出的高性能、低功耗的惯性测量单元(IMU),集成了3轴加速度计和3轴陀螺仪,用于测量加速度、角速度以及设备的姿态和运动。

corlin6688的博客 872

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

《SpringBoot2.0 实战》系列-整合Activemq实现点对点、发布订阅模式共存、消息持久化、重试等

简介 Apache ActiveMQ是Apache软件基金会所研发的开放源代码消息中间件;由于ActiveMQ是一个纯Java程序,因此只需要操作系统支持Java虚拟机,ActiveMQ便可执行。 作用 应用解耦 异步通信 流量削峰 消息通讯 安装 提供docker的安装方式,其他方式网上也都有很多 https://blog.csdn.net/HXNLYW/article/de...

小葫芦的博客 1140

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

SpringBoot2.X学习之整合ActiveMQ实战同时支持queue以及topic

activemq是一个非常常用的消息中间件,本节课进行SpringBoot2.0整合activemq队列模式的讲解,关于activemq基本介绍网上很多,这里就不进行详细讲解了。 SpringBoot关于activemq的官网:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#bo...

袖卷笛音的博客 1282

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Spring Boot 2.X - Spring Boot整合JMS之ActiveMQ(发布订阅模式)

文章目录Spring Boot 2.X - Spring Boot整合JMS之ActiveMQ1.修改配置2.订阅者3.修改接口4.启动测试5.问题?6.点对点和发布订阅共存解决6.1 新建配置类6.2 修改配置6.3 修改订阅者6.4 启动测试7.发现另一种方法7.1 修改配置7.2 注释掉配置类7.3 修改订阅者7.4 修改点对点调用方法7.5 启动测试 Spring Boot 2.X - S...

XUDC的程序人生 3235

ActiveMQ整合SpringBoot踩坑

ActiveMQ整合SpringBoot踩坑 小黄因为工作需要使用到ActiveMQ,在使用之前,小黄只掌握了RabbitMQ,因为MQ大同小异,理解了一个MQ,其他的MQ使用起来也不会有太大问题,小黄就跟着网上的帖子学会了如何使用ActiceMQ Java中使用ActiveMQ 学习嘛,肯定不能一步登天,本来小黄上来就直接ActiveMQ整合SpringBoot,搞着搞着发现整不会了,所以还是需要一步一个脚印的走,需要先在Java中学会使用ActiveMQ。 在学习过程中,因为是对比学习嘛,小黄会拿A

Yellow_Star的博客 3465

SpringBoot整合activeMQ遇到的坑,以及整合案例

异常源码如下: @JmsListener(destination="mytopic") //注:此处方法不可有返回值 public String receviceTopicMsg(TextMessage tm) { String str = ""; try { str = tm.getText(); System.out.println("topic"+ tm.getTex...

那年青春,我们正好 1万+

SpringBoot整合ActiveMQ

前言 ActiveMQ 一个成熟的消息中间件,作用于系统之间的通信,降低模块与模块之间的耦合度。 消息的传递有两种类型: Queue 队列模式:一个生产者和一个消费者一一对应 Topic 发布者/订阅者模式:一个生产者对应多个消费者 本博客配置了Queue 队列模式和Topic 发布者/订阅者模式,可同时支持。 源码 GitHub地址:https://github...

我的博客 5023

《ActiveMQ系列》3.SpringBoot整合Activemq

SpringBoot整合ActiveMQ,包含发送文本消息、对象消息、持久化订阅等。

qq_45041965的博客 2236

SpringBoot 整合实现ActiveMQ

目录一、ActiveMQ介绍二、ActiveMQ安装、服务端开启2.1 安装2.2 服务端启动三、SpringBoot 整合实现ActiveMQ3.1添加依赖3.2添加配置文件(yml文件)3.3 Queue3.3.1 Queue配置3.3.2 创建生产者3.3.3 创建消费者3.3.4 启动类添加@EnableJms 注解,启动消息队列3.3.5 测试3.4 Topic3.4.1 Topic配置3.4.2 发布者3.4.3 订阅者3.4.4 测试3.4.5 创建一个配置类,在配置类中提供监听工厂配置3.4

12程序猿的博客 3679

springboot整合ActiveMQ(点对点和发布订阅)

springboot整合ActiveMQ(点对点和订阅) ActiveMQ是什么,为什么使用MQ 是基于 Java 中的 JMS 消息服务规范实现的一个消息中间件。 1.系统解耦 采用中间件之后,就可以完美解决上述中因为耦合可能导致的问题。系统 A 不用去 关心下层服务调用方的问题。 2. 异步调用 当一个请求处理需要经过 3 个系统的时候,A 和 B 系统处理时间 3ms 时间,这个是非 常快的...

Cui6023056的博客 676

SpringBoot 整合ActiveMQ

消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题。实现高性能,高可用,可伸缩和最终一致性架构。是大型分布式系统不可缺少的中间件。消息形式支持点对点和订阅-发布。 ActiveMQ是什么 ActiveMQ是消息队列技术,为解决高并发问题而生 ActiveMQ生产者消费者模型(生产者和消费者可以跨平台、跨系统) ActiveMQ支持如下两种消息传输方式 点对点模式,生产者生产了一个消息,只能由一个消费者进行消费 发布/订阅模式,生产者生产了一个消息,可以由多个消费者进行消费.

qq_38097573的博客 3614
上一篇: SpringBoot2.0之整合ActiveMQ【点对点模式】
下一篇: SpringBoot2.0之整合ActiveMQ【发布订阅模式】
Art&Code
博客等级 码龄7年 77粉丝 554原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值