1

我有一个 JMS 队列的消费者。消费过程中可能出现异常,需要再次触发流程。我有两个初步计划:

  1. 将确认设置为javax.jms.Session.CLIENT_ACKNOWLEDGEjavax.jms.Message#acknowledge()处理成功时调用删除消息javax.jms.Session#recover(),处理失败时调用通知OpenMQ重新传递消息。但我找不到设置最大重新交付次数和重新交付时间间隔的方法。

  2. 将确认设置为javax.jms.Session.AUTO_ACKNOWLEDGE。每次发生异常时向新队列发送一条新消息(包含原始消息和处理时间),并且我希望能够设置延迟时间。但是,我找不到设置消息延迟时间的方法。

4

0 回答 0