,因此场景是1个发布者和2个消费者。队列需要消费者的ACK,以便将消息从队列中删除。
第1个消费者从队列接收消息,但没有ACK,因此该消息停留在队列上。
第二消费者从队列中读取时,第二消费者会收到消息吗?或发布者必须等待第一消费者的nack,以便能够将该消息传递给第二消费者?
在收到确认(ACK或NACK(之前,该消息将保留在队列上,但不会交付给另一个竞争的消费者。
仅在发送Requeue = true的NACK时,另一个消费者才会获得它。而且不能保证它将是消费者2。如果消费者1仍在进行,那么也许它将交付给消费者1。这取决于该时期是否已经处理过其他消息。
。