activemq消息积累,请教原因

问题描述

我们系统使用ActiveMQ作用两个系统间的交互。现在的问题是,每发送几个消息(个数不定),就有一个消息被mq放到pending里,队列的消费者始终读不了这个消息。时间长了,pending的数量就缓慢的增长。什么情况下消息会被MQ留下来,不能收走呢?

解决方案

解决方案二:
是最新版本吗?有没有可能是它自身的一个bug
解决方案三:
消息数据被持久化,每条消息都能被消费,没有监听QUEUE地址也能被消费,数据不会丢失,一对一的发布接受策略,保证数据完整。一个消息只能由一个消费者消费;消息消费者消费消息时机是队列没有被消息提供者锁住,也就是说只有消息提供者执行了session.close()后消费者才会执行onMessage()方法。发布/订阅模式:订阅一个主题的消费者只能消费自它订阅之后发布的消息;一份消息可以被多个消费者消费。
解决方案四:
是点对点模式。
解决方案五:
引用3楼paragenius的回复:

是点对点模式。

你的这个问题就是代码的问题,一定是Receiver部分处理出现了问题。队列名称NumberOfPendingMessages是队列中有多少个消息等待出队列NumberOfConsumers是队列中有多少个消费者MessagesEnqueued是队列共有多少个信息MessagesDequeued是队列中已经出列多少个消息建议结合ActiveMQ官网和参考一下网上的实现代码,排查实验一下。
解决方案六:

解决方案七:
若是queue,去找消费端的问题,正常来讲queue除非堵了,不会出现一部分被消费一部分保留的情况,除非消费短有问题,拒绝了;若是topic,看看你分发时候是否确定有分发的消费端;
解决方案八:
请问问题解决了吗?我也有四个message卡在pending里。

时间: 2024-08-29 11:25:41

activemq消息积累,请教原因的相关文章

文件传输-C++跨平台传输消息,linux用时超长,请教原因

问题描述 C++跨平台传输消息,linux用时超长,请教原因 做了一个聊天室程序,传递1.5G的文件时,每次传递20K,windows下大概3分钟左右,无压力.但是当把服务器放在linux下,客户端仍然在windows,传递时间变成了18分钟左右.做了一个验证,普通的发短消息,在windows下是0.001秒左右,但是linux传递一次大概平均需要0.006秒左右. 这样大概排除了我传文件有花费时间的问题. 请问下大家是什么原因?我的里面没有进行sleep,短消息也是直接调用发送函数的 解决方案

ActiveMQ消息传送机制以及ACK机制详解 AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的

ActiveMQ消息传送机制以及ACK机制详解     AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的手段来确保消息的分发是可靠的.   一. ActiveMQ消息传送机制     Producer客户端使用来发送消息的, Consumer客户端用来消费消息:它们的协同中心就是ActiveMQ broker,broker也是让producer和consumer调用过程解耦的工具,最终实现了异步RPC

【转】ActiveMQ消息传送机制以及ACK机制详解

本文转载自 http://shift-alt-ctrl.iteye.com/blog/2020182 AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的手段来确保消息的分发是可靠的.   一. ActiveMQ消息传送机制     Producer客户端使用来发送消息的, Consumer客户端用来消费消息:它们的协同中心就是ActiveMQ broker,broker也是让producer和consu

viewcontroller-pop 一个viewController时候会有键盘闪现出来又消失, 请教原因和解决方法?

问题描述 pop 一个viewController时候会有键盘闪现出来又消失, 请教原因和解决方法? 假如有两个ViewController: A 和 B(使用了UINavigationController), 在B中有一个TextField, 一个Button.(在ARC模式下, 不过MRC模式也有同样的问题.) 在Button调用的方法中创建一个UIAlertView, 在AlertView的代理方法clickedButtonAtIndex中实现pop到A. 也写了[__textField

我用vfp制作安装包出现了图片中的错误提示,请教原因

问题描述 我用vfp制作安装包出现了图片中的错误提示,请教原因 解决方案 http://wenku.baidu.com/link?url=ArnV_IaWvSHIas6LR_Atcx8VyqJQ30A2ugKcCA3sVDwcUsTeIEaxT9sy6cehI-GdPrXMWAlKOxcYsOvVPiN8EhG1dViyI87Qj8iBrF2BB4a

ActiveMQ消息队列

什么是MQ? 消息队列(MQ)是一种应用程序对应用程序的通信方法.应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接它们.消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术(如:WebService).排队指的是应用程序通过队列来通信.队列的使用除去了接收和发送应用程序同时执行的要求. 为什么要用MQ? 1.调用异步化,提高服务器性能 在不使用消息队列的情况下,用户的请求数据直接写入数据库,

JMS ActiveMQ 消息丢失

问题描述 对于单点故障情况断线期间所有消息自动丢弃请教一下各位大虾是如何解决类似问题的 问题补充:<div class="quote_title">zhanjia 写道</div><div class="quote_div">消息发送端设置为:PERSISTENT<br />PERSISTENT(持久化)的消息在JMS服务器中持久化.<br /><br />JMSDeliveryMode <

关于ActiveMQ 消息吞吐量的如何优化?

问题描述 最近公司想对公司应用结构进行优化,对现在架构中很多耗费资源严重且耗时比较长的应用间大数据量同步通信的接口进行优化,讨论决定引入消息中间件,网上浏览了一圈最后锁定ActiveMQ,在网上看到很多关于ActiveMQ的测试分析文档,大部分测试结果 AMQ的每秒吞吐量大概都在2000以上甚至更多,但是我在公司服务器上面测试的数据并不是很理想,有点让人头疼,不能够达到峰值,甚至在多线程下速度极速下降,效率方面有点不能让人接受,想看看有没有更好的优化配置. 下面是我的Amq的配置: [size=

ActiveMQ消息队列介绍(转)

ActiveMQ是一个开源兼容Java Message Service (JMS) 1.1面向消息的中件间. 来自Apache Software Foundation. ActiveMQ提供松耦合的应用程序架构. 先来看两个应用通过RPC通讯的紧耦合: 通过面向消息的中件间, 架构演变为: 我们看到应用程序1发送message到中件间, 应用程序2从中件间接收message. ActiveMQ提供了灵活的应用程序架构. ActiveMQ消息存储也是FIFO: 什么时候使用ActiveMQ: 1.