[英]ActiveMQ Configuration of default RedeliveryPolicy.maximumRedeliveries for all connections
[英]AmazonMQ/ActiveMQ Message RedeliveryPolicy MaximumRedeliveries Ignored
我已经按如下方式配置了 ActiveMQ 重新交付插件(最多 4 个重新交付)
<redeliveryPlugin fallbackToDeadLetter="true" sendToDlqIfMaxRetriesExceeded="true">
<redeliveryPolicyMap>
<redeliveryPolicyMap>
<defaultEntry>
<redeliveryPolicy initialRedeliveryDelay="5000" maximumRedeliveries="4" redeliveryDelay="10000"/>
</defaultEntry>
</redeliveryPolicyMap>
</redeliveryPolicyMap>
</redeliveryPlugin>
如果客户端未能发送 ACK,则消息将重新传递。 到目前为止一切都很好......但是,最大重新传递被经纪人完全忽略,并且它不断“无限地”重新传递消息很多次。 此外,该消息永远不会移动到 DLQ。
我也尝试在连接 URI(STOMP 连接器)上使用: ?jms.redeliveryPolicy.maximumRedeliveries=4
,但也没有运气。
非常感谢任何帮助!
对于 STOMP 客户端,我会假设代理不会将消息视为已交付,除非客户端对其进行 ACK 或 NACK 否则它必须假设它从未将其发送到客户端,因此将其视为始终具有交付计数零。 代理重新传递插件会关闭消息的传递计数,因此如果消息被视为尚未传递,在这种情况下很可能是这样,那么它不会对消息采取任何操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.