【问题标题】:Apache Camel - Dead Letter Channel: apply comparison after dequeuingApache Camel - 死信通道:出队后应用比较
【发布时间】:2022-02-01 14:33:19
【问题描述】:

我在试图找出解决此问题的方法时遇到了一些问题: 我需要在 Apache Camel 上实现一个 DLC,但是当消息从我在 ActiveMQ 上的死信队列中出列时,它们中的每一个都必须与另一个 AMQ 队列上的最新消息进行比较。

所以要明确一点:当 Camel 从 queue1(死信队列)消费消息 M1 时,在尝试将其重新发送到某个路由之前,它必须将 M1(例如标头比较)与当前的最新消息进行比较队列 2,M2。 M2 不会从 queue2 中移除(它也将用于下一次比较),而 M1 必须从 queue1 中移除。

我想了解这是否可行以及我缺少哪个 EIP 以实现此功能。

【问题讨论】:

    标签: apache-camel activemq integration-patterns


    【解决方案1】:

    你需要a QueueBrowser来浏览queue2的消息而不消费它们。

    或者,您也可以在事务中从 queue2 消费,然后强制回滚,这样消息就不会被消费。但是当“queue2 上的最新消息”不代表第一条消息时,这将不起作用,因为您只能像这样处理第一条消息。

    【讨论】:

      猜你喜欢
      • 2014-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多