0

我知道在生产者/消费者语义(队列作为目的地)中,消费者可以附加一个消息侦听器。因此,每当有消息到来时,监听器都会通过 'onMessage()' 方法异步捕获它。我想知道发布/订阅方案中是否存在任何此类异步行为,以便订阅者不需要调用“receive()”方法来捕获已发布的消息。

4

1 回答 1

1

您可以在主题和队列上使用异步侦听器。唯一的区别是消息传递的语义。在主题情况下,您的订阅者需要在发送消息之前处于活动状态,否则它将不会收到它,在队列中,所有消息都以循环方式存储和分发。

您当然可以创建一个持久订阅者来接收客户端离线时发送的消息,只需记住订阅需要创建一次,然后消息开始为它堆积起来。

于 2013-10-03T10:14:38.527 回答