【发布时间】:2013-10-09 23:15:43
【问题描述】:
我知道在生产者/消费者语义(队列作为目的地)中,消费者可以附加一个消息侦听器。因此,每当有消息到来时,侦听器都会通过 'onMessage()' 方法异步捕获它。我想知道发布/订阅方案中是否存在任何此类异步行为,以便订阅者不需要调用“receive()”方法来捕获已发布的消息。
【问题讨论】:
标签: asynchronous activemq publish-subscribe
我知道在生产者/消费者语义(队列作为目的地)中,消费者可以附加一个消息侦听器。因此,每当有消息到来时,侦听器都会通过 'onMessage()' 方法异步捕获它。我想知道发布/订阅方案中是否存在任何此类异步行为,以便订阅者不需要调用“receive()”方法来捕获已发布的消息。
【问题讨论】:
标签: asynchronous activemq publish-subscribe
您可以在主题和队列上使用异步侦听器。唯一的区别是消息传递的语义。在主题情况下,您的订阅者需要在发送消息之前处于活动状态,否则它将不会收到它,在队列中,所有消息都以循环方式存储和分发。
您当然可以创建一个持久订阅者来接收客户端离线时发送的消息,只需记住订阅需要创建一次,然后消息开始为它堆积起来。
【讨论】: