消息独有消费者

队列(Queue)中的消息是按照顺序被分发到消费者(Consumers)的。然而,当有多个消费者(Consumers)同时从相同的队列(Queue)中提取消息时,将失去这个保证。因为这些消息是被多个线程并发的处理。有的时候,保证消息按照顺序处理是很重要的。

代理(Broker)会从多个消费者(Consumers)中挑选一个消费者(Consumer)来处理队列(Queue)中所有的消息,从而保证了消息的有序处理。如果这个消费者(Consumer)失效,那么代理(Broker)会自动切换到其它的消费者(Consumer)。

可以通过DestinationOptions 来创建一个独有消费者(Exclusive Consumer),如下:

queue = new PMQQueue("PMQ.QUEUE?consumer.exclusive=true");
consumer = session.createConsumer(queue);

results matching ""

    No results matching ""