我使用 WebSphere 作为 Web 服务器和应用服务器。Web 服务器使用 JMS 连接到 ActiveMQ Artemis,而应用服务器使用资源适配器连接到 ActiveMQ Artemis。请求进入 Web 服务器后,会发送到 ActiveMQ Artemis 队列,然后请求会发送给消费者。但是,我希望将该消息保留 10 秒钟,然后再将其发送给消费者。
是否有可能在 ActiveMQ Artemis 中实现这一点?
以下是我的一些broker.xml
:
<address-settings>
<address-setting match="#">
<dead-letter-address>DLQ</dead-letter-address>
<expiry-address>ExpiryQueue</expiry-address>
<redelivery-delay>0</redelivery-delay>
<auto-create-dead-letter-resources>true</auto-create-dead-letter-resources>
<max-size-bytes>-1</max-size-bytes>
<message-counter-history-day-limit>10</message-counter-history-day-limit>
<address-full-policy>PAGE</address-full-policy>
<auto-create-queues>true</auto-create-queues>
<auto-create-addresses>true</auto-create-addresses>
<auto-create-jms-queues>true</auto-create-jms-queues>
<auto-create-jms-topics>true</auto-create-jms-topics>
<auto-delete-queues>false</auto-delete-queues>
<auto-delete-addresses>false</auto-delete-addresses>
<auto-delete-jms-queues>false</auto-delete-jms-queues>
<auto-delete-jms-topics>false</auto-delete-jms-topics>
<expiry-delay>60000</expiry-delay>
</address-setting>