我正在阅读Persistence Configuration,并且有一些疑问。
我知道队列可以持久,也可以不持久,消息也分为两类:持久性或临时性。
如文档所述:持久性消息到达队列后将立即写入磁盘。
所以,这是我的问题:
任何关于如何测试这些条件的想法都将受到赞赏。
答案 0 :(得分:1)
如果我发送一条消息,但该消息未分发到任何队列中,那么该消息是否持久?
否,请参见mandatory
处理无法路由的消息。
如果队列不是持久性的,则删除队列时是否会从磁盘上删除消息(持久性或临时性,未被消耗)?
是
如果消耗了一条消息,rabbitmq会从物理存储中删除此消息吗?
消费了一条消息并且状态为unacked
时,该消息不会被删除。
当您发送ack
或nack
时,该消息将从内存/磁盘中删除。