1. 程式人生 > >柯南君:看大資料時代下的IT架構(2)訊息佇列之RabbitMQ-基礎概念詳細介紹

柯南君:看大資料時代下的IT架構(2)訊息佇列之RabbitMQ-基礎概念詳細介紹

在實際應用中,可能會發生消費者收到Quque中的訊息,但沒有處理完成就宕機的情況,這種情況下,就可能導致資訊丟失,為了避免這種情況發生,我們可以要求消費者在消費完訊息後傳送一個回執給RabbitMQ,RabbitMQ收到訊息回執(Message acknowledge)後,才將該訊息從Quque中移除。如果RabbitMQ沒有收到回執,並檢測到消費者的RabbitMQ連結斷開,則RabbitMQ 會將該訊息傳送給其他消費者(如果存在多個消費者的情況下)進行處理,這裡不存在timeout的概念,一個消費者處理消費時間不管多麼長也不會導致該訊息被髮送給其他消費者,除非它的RabbitMQ連線斷開;