【问题标题】:Acknowledge a message from a different Channel/Session in JMS在 JMS 中确认来自不同通道/会话的消息
【发布时间】:2011-03-30 11:36:46
【问题描述】:

我需要在与创建它的会话不同的会话中确认一条消息。如果在给定时间内未确认消费的消息,则应将其添加回队列。这是否可以使用 JMS(计划使用 ActiveMQ 作为代理)。

【问题讨论】:

    标签: java jms message-queue activemq


    【解决方案1】:

    我认为这是不可能的。

    如果消息被消费,应该由消费者会话确认(可以是自动或客户端确认)。确认是保证消息传递和事务机制的关键。 JMS 服务器使用确认确保消息成功发送/使用。

    关于超时问题,如果JMS服务器在给定时间段内没有收到ack,通常会重新发送消息并设置JMSRedelivered标志。我认为不会添加回队列,然后能够被同一会话或另一个会话作为新消息使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-13
      • 1970-01-01
      • 1970-01-01
      • 2018-07-07
      • 2011-01-30
      • 2010-12-12
      • 1970-01-01
      相关资源
      最近更新 更多