我正在开发一个使用activemq交换消息的应用程序,有些消息太大以至于我想取消。我们使用两个ActiveMQ实例(主/从)的activemq故障转移传输。代理本身对消息有100mb的帧大小限制。问题是:如果我尝试发送大于100mb的消息,ActiveMQ服务器将关闭连接。此时,故障转移传输将尝试重新连接并再次发送消息,从而形成无限循环。客户端记录如下:2017-01-0509:19:11.910WARN14680---[0.1:61616@57025]o.a.a.t.failover.FailoverTransport:Transport(tcp://localhost:61616)
ApacheActivemq5.2.0我的应用程序监听三个主题的消息并发送两个主题的消息。当我的应用程序被“webping”时,我想检查这些主题是否存在。我想知道这是否可能。这是我的观察,Advisorymessages可以用于此,但它们仅在生产者/消费者加入时才发送消息。这不是我想要的。我只想检查我是否可以向出站主题发送消息以及可以接收关于入站主题的消息。自定义心跳解决方案。我可以让每个生产者每5秒发送一次心跳消息,而监听器不处理心跳消息而是更新标志/时间戳。这样我就知道该主题已经启动并正在运行。ApacheActiveMQ中是否内置了类似心跳的功能?还是“针对某个主题的ping”?
在我的开发机器上本地启动/停止ActiveMQ(5.6)我刚刚运行./activemqstart和./activemqstop分别。在我们的QA机器上,我们将其作为服务安装并运行serviceactivemqstart和serviceactivemqstop分别。刚刚去弹QA机发了serviceactivemqstop,然后serviceactivemqstart重新启动它。我看到正在创建一个进程ID,如果我运行ps-aef|grepactivemq我看到了ActiveMQ服务器的生机勃勃的过程。但是如果我去http://:8161/admin我收到了您在服务器停机时看到的典型错误:F
背景在高层次上,我有一个Java应用程序,其中某些事件应触发要为当前用户执行的特定操作。但是,事件可能很频繁,Action总是一样的。因此,当第一个事件发生时,我想安排在不久的将来某个时间点(例如5分钟)采取行动。在那个时间窗口内,后续事件不应该采取任何行动,因为应用程序看到已经安排了一个行动。一旦预定的Action执行,我们就回到第1步,下一个事件再次开始循环。我的想法是通过在应用程序本身中嵌入一个内存中的ActiveMQ实例来实现这种过滤和限制机制(我不关心队列持久性)。我相信JMS2.0支持这种延迟传递的概念,延迟的消息位于“暂存队列”中,直到传递到真正的目的地为止。但是,我也相
我们目前正在使用JMS和activemq(5.5.1)开发应用程序。我们想为某些消息定义更高的优先级,这将使它们首先被消费。设置生产者和消费者后(通过spring(3.1)JMSTemplate),优先级并没有完全发挥作用。事实上,当我们“关闭”消费者并发送一些消息时,优先级得到尊重,但是当我们在消费者开启时添加消息时,消息的接收顺序与发送顺序相同。配置非常简单:在activemq配置文件中激活了优先级:"prioritizedMessages="true"/>...并且在生产者模板配置中启用了QoS:要发送具有高优先级的消息,我们只需更改生产者端的模板优先级属性:template.s
我使用ActiveMQ作为代理来传递消息。这些消息旨在写入数据库中。有时,数据库无法访问或已关闭。在这种情况下,我想回滚我的消息以便稍后重试此消息,并且我想继续阅读其他消息。这段代码工作正常,除了一点:回滚消息阻止我阅读其他代码:privateConnectiongetConnection()throwsJMSException{RedeliveryPolicyredeliveryPolicy=newRedeliveryPolicy();redeliveryPolicy.setMaximumRedeliveries(3);//willretry3timestodequeuerollba
我想创建一些工具来管理队列中的消息。所以我希望能够从队列中获取所有消息(类似于导出)并且不要从那里删除它。我尝试使用JMXAPI:ObjectNamembeanNameQueue=newObjectName("org.apache.activemq:type=Broker,brokerName=static-broker1,destinationType=Queue,destinationName=tmp_queue2");org.apache.activemq.broker.jmx.QueueViewMBeanqueueView=JMX.newMBeanProxy(mbsc,mbea
我有两个SpringBoot应用程序在一台服务器上运行。两者都使用嵌入式ActiveMQJMS。我想为每个应用程序提供单独的JMS实例。我怎么能为他们每个人设置端口?是否有类似spring.activemq.port的属性?当我运行第二个应用程序时,出现以下预期错误:FailedtostartJMXconnectorCannotbindtoURL[rmi://localhost:1099/jmxrmi]:javax.naming.NameAlreadyBoundException:jmxrmi[Rootexceptionisjava.rmi.AlreadyBoundException:
我正在尝试实现以下功能:逐行读取CSV文件,然后读取每一行:根据该行包含的值构建请求将请求发送到消息队列其他组件需要获取消息、处理请求并将响应发送到另一个消息队列(生产者已知,因此生产者可以获取响应)。我相信request-replypattern符合要求。我安装了ActiveMQ,下载了camel并尝试使用他们的jms项目。在配置组件、队列和测试连接(有效)之后,我试图弄清楚如何实际实现请求-回复?我没有找到任何好的examples我有一个路由生成器RouteBuilderpublicclassMyRouteBuilderextendsRouteBuilder{publicstati
我正在尝试弄清楚如何获取远程代理上现有队列的列表。看起来我可以通过添加咨询消息(我还没有工作)在创建/销毁队列时收听它们,但我需要在启动时获取所有现有队列。看起来我可以用getDestinationMap做到这一点:http://activemq.apache.org/maven/apidocs/org/apache/activemq/broker/region/Region.html#getDestinationMap()但这似乎只能从嵌入式和进程内代理调用。我的意思是...我愿意走那条路,但为activemq设置正常的init/daemon设置,然后让远程进程像普通的JMS消费者一