【发布时间】:2014-05-23 22:44:58
【问题描述】:
我有两个具有相同消费者的 AMQ 队列。 第一个队列 (Q1) 处理 97% 的消息,而另一个 (Q2) 仅处理 3%。 问题是 Q2 中的消息需要在消息排队后立即处理。 所以我的问题是,当第二季度有消息可用时,我需要以某种方式暂停第一条路由以接收它的消费者。 apache 骆驼路由是这样的:
<route id="q1">
<from uri="jms:recordAnalysisRequests" />
<to uri="bean:analysisService" />
</route>
<route id="q2">
<from uri="jms:recordAnalysisRequestsFastTrack" />
<to uri="bean:analysisService" />
</route>
应该使用什么策略? 我认为我不能使用重新排序器,因为第一季度可能有数千条消息排队,我无法将所有消息都放入重新排序器批次中。 我正在查看限制路线,但我不知道该怎么做。 另外我想知道我是否可以通过 zookeeper 节点进行同步。如果此解决方案可行,我将再次需要一些指导。
【问题讨论】:
-
请注意标签是独立的。也就是说,您不能组合多个标签来创建一个概念。标签
[apache]和[camel]一起与单个[apache-camel]标签不同。请务必阅读选择标签时出现的说明!
标签: apache-camel activemq