我目前在我的ActiveMQ服务器中有一个名为hello.world
的队列。每当消息无法处理时,ActiveMQ都会创建一个名为ActiveMQ.DLQ
的默认目录。是否可以将该名称更改为hello.world.DLQ
之类的名称?原因是我将来可能有几个队列,我希望它像<queue_name>.DLQ
答案 0 :(得分:5)
你要找的东西叫onSelectDate
,
在此过程中,ActiveMQ为每个队列/主题创建特定的DLQ,
您可以通过稍微调整Individual Dead letter Queue strategy
来实现如下
activemq.xml
此配置将创建名称为 <destinationPolicy>
<policyMap>
<policyEntries>
<policyEntry queue=">"> <!-- '>' is the wildcard used in ActiveMQ which means for all queues, i.e. same as '*' in any other language -->
<!-- need to add the following lines in you conf file -->
<deadLetterStrategy>
<individualDeadLetterStrategy
queuePrefix="DLQ." useQueueForQueueMessages="true" />
</deadLetterStrategy>
</policyEntry>
</policyEntries>
</policyMap>
</destinationPolicy>
的DLQ,如果您不需要前缀,则可以删除DLQ.<queue_name>
属性。
希望这有帮助!
祝你好运!