我对JMS还不熟悉。我从一个Java应用程序向Topic发布消息并从客户端(node.js Javascript)监听消息开始进行“hello world”操作。我阅读了维基百科入口,但是根据我之前的理论理解还有一些问题。
根据我的理解,点对点是队列实现,队列上最多可以有一个消费者订阅,只能由该消费者消耗。生产者和消费者都不知道彼此。在我的情况下,队列托管在消息代理中Apache ActiveMQ。在发布消息之前,可以由生产者创建队列(或者可以提前从控制台创建队列)。
在发布/订阅模型的情况下,与点对点几乎相同,除了我们使用Topic而不是Queue。在此模型中,主题上可以有多个消费者。一旦消息被发布,所有订阅者都会收到通知。现在,如果订阅者中的任何一个发送有关已发布消息的确认,则消息将被视为已被消耗,并且不再对新订阅者可用?