【发布时间】:2022-06-10 23:37:43
【问题描述】:
ActiveMQ 的文档让我很难过,所以你是我最后的希望:D
我想要什么:
传出队列中消息的到期日期。传入、DLQ 和 RTS 队列中的消息应该永远保留。
所以过期始终是0,除非将消息放入传出队列。然后 ActiveMQ 必须设置一个新的到期日。或者,这也可以由应用程序设置
或者(也许更容易):
传出和传入队列中消息的到期日期。 DLQ 和 RTS 队列中的消息应该永远保留。
所以过期总是12345(或左右),除非消息传输到 RTS 或 DLQ。然后 ActiveMQ 必须将新的过期日期设置为0
我尝试了什么:
- 在
应用程序
message.setJMSExpiration(XYZ);然而, 然后到期日期始终设置为0。可能是因为 spring jms 库 - 配置 deadLetterStrategy 使 DLQ 中的所有消息的过期时间为
0。但是好像没有效果。可能配置错误
<deadLetterStrategy>
<individualDeadLetterStrategy
processNonPersistent="true"
queuePrefix="DLQ."
useQueueForQueueMessages="true"
processExpired="false"
expiration="0"/>
</deadLetterStrategy>
也许你可以帮助我:)
提前谢谢你
Spring-jms:5.3.20
ActiveMQ:5.15.15
【问题讨论】:
标签: spring queue activemq spring-jms dlq