消費者訂閱隊列(Consume)時能夠指定autoAck參數,當autoAck爲false時,RabbitMQ會等消費者顯式地回覆確認信號後才從內存(或磁盤)移去消息(實質上是先打上刪除標記,以後再刪除)。當autoAck爲true時會自動確認,而後刪除消息。
當autoAck 參數置爲 false ,對於 RabbitMQ 服務端而言 ,隊列中的消息分紅了兩個部分:一部分是等待投遞給消費者的消息;一部分是己經投遞給消費者,可是尚未收到消費者確認
信號的消息。 若是 RabbitMQ 直沒有收到消費者的確認信號,而且消費此消息的消費者己經
斷開鏈接(斷開鏈接是惟一標準,不會超時),則 RabbitMQ 會安排該消息從新進入隊列,等待投遞給下 個消費者,固然也有可
能仍是原來的那個消費者。安全
參考:RabbitMQ實戰性能