spring+activemq消息总是离奇被消费

我的activemq配置的是queue模式的,配置了一个listener来自动消费消息,可是当配置了第二个Destination时,监听就无法接收到消息了,我查看了下,每次发消息的同时消息就被消费掉了,没有待消费消息,所以监听不能运行,但是连续发送几条,会有几率其中的一条被监听消费。后来我把监听注释掉测试,按理说没有人来消费他,发送到队列里的消息是不会被消费的,可是奇怪了,每次发送消息的同时消息就被消费了。一个人研究了好几天没研究出来个所以然。希望哪位大佬能指点一二,不吝赐教,小弟感激不尽。

2个回答

注释掉spring-mq的xml中的queueListenerContainer

是因为代码里有监听,而同事本地把代码启动了,这样就有好几个监听了,消费完全是看谁抢到手,所以就出现了这种离奇被消费的原因

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Activemq消息离奇被消费
当queue模式下,你发送了消息的同时就被消费了,你这里没有监听,没有拉取消息,那么,肯定是被别人的监听消费了。为什么呢?因为这种情况一般都是一个消息服务,好多人共同开发一个项目,每个人的电脑上的项目都可能消费这个消息服务里的消息。 发现的办法,给消息换个类型,别人那边报错了,说明他消费了,因为类型不对,所以报错了。
spring+activemq消息总是离奇被消费
我的activemq配置的是queue模式的,配置了一个listener来自动消费消息,可是当配置了第二个Destination时,监听就无法接收到消息了,我查看了下,每次发消息的同时消息就被消费掉了,没有待消费消息,所以监听不能运行,但是连续发送几条,会有几率其中的一条被监听消费。后来我把监听注释掉测试,按理说没有人来消费他,发送到队列里的消息是不会被消费的,可是奇怪了,每次发送消息的同时消息就被消费了。一个人研究了好几天没研究出来个所以然。希望哪位大佬能指点一二,不吝赐教,小弟感激不尽。
activemq消息的产生与消费 Java
activemq:进入bin目录启动,localhost:8161访问activemq客户端 1.发送消息给activemq客户端: String url = "tcp://ip地址:61616"; String user = ActiveMQConnection.DEFAULT_USER; //默认用户名admin String password = Activ...
java代码主动消费消息ActiveMQ消息{StringMessage}
直接上代码: import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageConsumer; import javax.jms.Session; i...
ActiveMQ顺序消费消息+消息分组
简介 Queue中的消息是按照顺序发送给Consumers的。然而,当你有多个Consumer同时从相同的Queue提取消息时,顺序将不能得到保证。因为这些消息时被多个线程并发的处理。但是,有时候保证消息的顺序是很重要的。例如,你可能不希望插入订单操作结束之前执行更新订单的操作。那么我们可以通过Exclusive Consumer和Message Groups来实现这一目的。 独有消费者 从Act...
activemq消费者消息预取和消息消费确认
消费者可以通过设置prefetchSize进行批量取消息,有默认值。可以设置: 1、 tcp://localhost:61616?jms.prefetchPolicy.all=50 2、 tcp://localhost:61616?jms.prefetchPolicy.queuePrefetch=1 3、 queue = new ActiveMQQueue(“TEST.QUEUE?co...
spring多线程消费消息
package com.momfo.web.mns.service;import java.util.Random;import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.spr
spring + activemq 消息sample
NULL 博文链接:https://cl516518.iteye.com/blog/2313388
storm确保消息被消费
1.发送的tuple需要携带msgId         collector.emit(new Values(line),index); 2.bolt中需要对tuple进行确认(ack() | fail())         public void execute(Tuple tuple) {             String line = tuple.getString(0);       ...
Storm确保消息被消费
1.spout中nextTuple方法中发送的tuple需要携带msgId   collector.emit(new Values(line),index);   //index为Integer类型2.bolt中需要对tuple进行确认(ack() | fail()) public void execute(Tuple tuple) { String line = tuple.getStrin...
09.storm确保消息被消费
<p>n <span style="color:#333333;">Storm最初由Nathan Marz和BackType的团队创建。BackType是一家社交分析公司。后来,Storm被收购,并通过Twitter开源。</span><span style="color:#333333;">在短时间内,Apache Storm成为分布式实时处理系统的标准,允许您处理大量的数据,类似于Hadoop。Apache Storm是用Java和Clojure写的。<span>它仍然是实时分析的领导者。</span></span>n</p>n<p>n <span style="color:#333333;"><span><span><br /></span></span></span>n</p>n<p>n <span style="color:#333333;"><span><span>本教程将探讨Apache Storm的原理,分布式消息传递,安装,创建Storm拓扑并将其部署到Storm集群,Trident的工作流程,<span>实时应用程序,并通过与Kafka、Hbase等进行技术的集成,让你快速掌握和理解Storm的精髓。</span></span></span></span>n</p>
ActiveMQ和spring整合,订阅主题和消息消费
本文章适用初学ActiveMQ的统同学。 本演示为windows下进行 首先下载ActiveMQ 1.ActiveMQ地址     ActiveMQ官方网站:http://activemq.apache.org/  2.下载完成或解压到本地F:/目录下 3.启动本地ActiveMQ服务。   进入到安装目录双击activemq.bat文件启动,如果启动时窗口一闪而
ActiveMQ消息队列之java消息生产与消费
话题生产者:package cn.itcast_03_mq.topic; import java.util.Random;import javax.jms.JMSException; public class ProducerTest { /** * @param args */ public static void
activemq 应答ack机制与消费消息过程分析
主要关注有以下两点: 如何获取消息? 消息如何应答? 首先是一个简单的总结图,这个图是根据源码得出的。 ActiveMQMessageConsumer.receive 这个方法是同步阻塞获取消息的方法,尝试从源码分析其工作原理。 @Override public Message receive() throws JMSException { //检查连接 ...
ActiveMQ五种消息类型生产消费
一个简单的Spring整合activeMQ代码实现过程(p2p模式): 创建maven项目,创建生产者消费者模块,导入spring和activeMQ坐标。 生产者模块:提供Spring配置文件(定义ActiveMQ 连接工厂,Spring Caching连接工厂,消息生产者) <!-- ActiveMQ 连接工厂 --> <bean id="amqConnectionFactory" c
activemq 消息消费失败之后如何重新消费
在不开启事物的情况下 采用的是应答模式4(ActiveMQSession.AUTO_ACKNOWLEDGE)消费一次 应答一次 这时候消费失败了,由于没有配置死亡队列,消息就不会被消费堆积在队列中,那么怎么才可以让消息再被消费呢? 由于项目中的应用场景,有个方案启动和停止的功能,项目启动启动监听,项目停止,停止监听 具体实现代码如下 public class MqService { p
ActiveMQ结合Spring收发消息
直接使用 ActiveMQ 的方式需要重复写很多代码,且不利于管理,Spring 提供了一种更加简便的方式————Spring JMS ,通过它可以更加方便地使用 ActiveMQ。 Maven 依赖 结合Spring使用ActiveMQ的依赖如下: &amp;lt;!-- Spring JMS --&amp;gt; &amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;org.sp...
Spring Boot整合ActiveMQ消息
Spring Boot是现在很热门的一个微服务框架,作为一名Java Web 开发工程师,是必须要掌握它的。本系列课程会一步一步教大家如何使用Spring Boot,以及Spring Boot如何整合其它技术。
spring集成ActiveMQ, 消息提供者
1.spring集成ActiveMQ,依赖包 [code=&quot;java&quot;] org.springframework spring-jms 4.2.6.RELEASE org.apache.activemq activemq-client 5.13.3 org.apache.activemq activemq-spring 5.13.3 ...
activemq中spring接受消息
在dev-core.xml文件中添加   对于spring-config.xml文件,起对应的如下:       xmlns:context="http://www.springframework.org/schema/context"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:amq
ActiveMQ整合Spring——接收消息
需要的jar包,同上篇文章:新建spring-activemq.xml,配置如下(配置与发送消息稍有不同):&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt; &amp;lt;beans xmlns=&quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLS...
Spring ActiveMQ消息重发机制
《重发机制的实现》 &amp;lt;bean id=&quot;activeMQRedeliveryPolicy&quot; class=&quot;org.apache.activemq.RedeliveryPolicy&quot;&amp;gt; &amp;lt;!--是否在每次尝试重新发送失败后,增长这个等待时间 --&amp;gt; &amp;lt;property name=&quot;useExponentialBackOff&quot; value=&quot;true&quot;&
初次尝试ActiveMQ,实现简单的消息生产和消息消费
   初次使用ActiveMQ,借助百度(近来常规方式google无法访问)搜索了JMS1.1规范阅读了一下,于是动手开始尝试实现一个消息生产和消费的示例。       言简意赅,先来一个HelloWorld再说! 拜访http://activemq.apache.org/ 了解activemq的相关信息,并下载 activemq for windows 了解activemq的快速开始的手册,然后...
activemq生产消费的Demo
java整合activemq的demo,生产者和消费者两个方法。结合自带的工具http://192.168.1.106:8161。来查看消息传递情况
ActiveMQ独占消费模式
本文主要介绍一下ActiveMQ消息独占模式   1、消息独占模式(Exclusive Consumer)   Queue中的消息是按照顺序被分发到consumers的。然而,当你有多个consumers同时从相同的queue中提取消息时,你将失去这个保证。因为这些消息是被多个线程并发的处理。有的时候,保证消息按照顺序处理是很重要的。例如,你可能不希望在插入订单操作结束之前执行更新这个...
消息生产与消费及消息
相关概念 Binding-绑定 Exchange和Queue之间的连接关系 Binding可以包含RoutingKey Queue-消息队列 消息队列,实际存储消息数据 Durability:是否持久化 Auto delete:如果选yes,代表最后一个监听被移除之后,该Queue会自动删除 Message-消息 服务器和应用程序之间传送的数据 本质上是一段数据,由Proper...
Spring集成rabbitMQ监听消费队列消息
<bean id="rabbitTxManager" class="org.springframework.amqp.rabbit.transaction.RabbitTransactionManager" p:connectionFactory-ref="rabbitConnectionFactory" /> <rabbit:listener-container concurr
spring整合JMS(二)
1.3     消息监听器MessageListener        在Spring整合JMS的应用中我们在定义消息监听器的时候一共可以定义三种类型的消息监听器,分别是MessageListener、SessionAwareMessageListener和MessageListenerAdapter。下面就分别来介绍一下这几种类型的区别。 1.3.1  MessageListener Me
ActiveMQ与spring集成实例之使用消息监听器
        在EJB世界里,JMS消息最常用的功能之一是用于实现消息驱动Bean(MDB)。Spring提供了一个方法来创建消息驱动的POJO(MDP),并且不会把用户绑定在某个EJB容器上。         通常用消息监听器容器从JMS消息队列接收消息并驱动被注射进来的MDP。消息监听器容器负责消息接收的多线程处理并分发到各MDP中。一个消息侦听容器是MDP和消息提供者之间的一个中介,...
Spring 使用ActiveMQ 收发消息实例
NULL 博文链接:https://jackyin5918.iteye.com/blog/2008074
Spring JMS异步发收消息 ActiveMQ
JMS(使用消息中介:ActiveMQ) JMS为JAVA开发者提供了一个与消息中介进行交互,以及发送和接收消息的标准API,而且每一个消息中介的实现都会支持JMS。(即JMS为所有消息中介提供了统一接口);JmsTemplate是Spring消除冗长和重复JMS代码的解决方案。JmsTemplate可以创建连接,获取会话,以及发送和接收消息。http://blog.csdn.net/facepp/archive/2008/11/26/3374151.aspx
ActiveMQ(三)———spring消息持久化配置
一、Topic与Queue比较1、Topic Publish Subscribe messaging 发布订阅消息。 topic数据默认不落地,是无状态的。 并不保证publisher发布的每条数据,Subscriber都能接受到 一般来说publisher发布消息到某一个topic时,只有正在监听该topic地址的sub能够接收到消息;如果没有sub在监听,该topic就丢失了。 一对多的消息发布
spring结合activemq消息过期配置
包括queue和topic的消息过期配置。发送消息使用的spring-jms提供的JmsTemplate。 queue的配置 设置pubSubDomain为false,默认即为false。需要将explicitQosEnabled设置为true,过期时间要生效依赖它。timeToLive即为过期时间,本例中设置的是10秒过期。 topic的配置 设置pubSubDomain为true,表示...
十四、Spring cloud消息驱动整合(activemq)
一、Spring Cloud Stream Binder实现 (一)JMS 实现 ActiveMQ 1、增加依赖 &amp;amp;amp;amp;lt;!-- 整合 activemq: 间接依赖: spring jms jms api activemq spring boot jms ...
ActiveMq与spring的整合--发送和接收消息
一、在spring中添加相应配置:发送消息: &amp;lt;!-- 真正可以产生Connection的ConnectionFactory,由对应的 JMS服务厂商提供 --&amp;gt; &amp;lt;bean id=&quot;targetConnectionFactory&quot; class=&quot;org.apache.activemq.ActiveMQConnectionFactory&quot;&amp;gt; &amp;lt;property ...
spring 内嵌activeMQ 怎么用activeMQ的消息管理后台?
之前单独使用过activeMQ,启动后可以通过默认地址和用户名、密码进入activeMQ管理后台对消息进行管理,现在想用spring直接嵌入的activeMQ,但不知道怎么来管理消息队列,比如有死消息要放回消息队列这种操作
Spring封装ActiveMq发送和接收消息
消息中间件是搭建大型企业级项目必不可少的成员,只有掌握了消息中间件的使用和应用场景,才能开发真正的大型分布式系统。rnActiveMQ支持JMS,是apache的顶级项目,在全球开源消息中间件中影响力大!
ActiveMQ 整合 Spring 发送和接收消息
1.配置环境 第一步:引用相关的jar包。 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jms</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> </dependenc
ActiveMQ与spring集成实例之使用消息转换器
NULL 博文链接:https://firezhfox.iteye.com/blog/1753847
spring与activemq(三种消息监听方式)
   1.3     消息监听器MessageListener        在Spring整合JMS的应用中我们在定义消息监听器的时候一共可以定义三种类型的消息监听器,分别是MessageListener、SessionAwareMessageListener和MessageListenerAdapter。下面就分别来介绍一下这几种类型的区别。 1.3.1  MessageList...
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview