gpt4 book ai didi

java - ActiveMQ 将过期消息移动到与失败消息不同的队列

转载 作者:行者123 更新时间:2023-11-30 02:18:11 24 4
gpt4 key购买 nike

我有一个用例,ActiveMQ 队列上可能会堆积消息。目标是首先执行优先级较高、较新的消息。早于某个时间的高优先级消息应以较低优先级执行。

据我所知,JMS 选择器不支持 NOW() 的概念; (即)

JMSTimestamp < NOW() - 30 MINUTES

我读到了使用过期时间的建议。据我了解redelivery policy ,过期的消息与失败的消息进入同一个队列。有没有办法让过期的消息移动到不同的队列(queue.A)然后失败的消息(DLQ)?

谢谢。

最佳答案

在 ActiveMQ 5.x 中,我无法想到使用标准的代理配置选项集来做到这一点。也就是说,您始终可以编写自己的 BrokerPlugin,通过拦截过期消息并将其发送到其他地方来执行这些操作。

如果您使用的是 ActiveMQ Artemis,那么您可以通过将其配置为执行您想要的操作来轻松完成此操作,Failed DeliveryExpiry地址配置允许您处理这种情况。

关于java - ActiveMQ 将过期消息移动到与失败消息不同的队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47661156/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com