1. 程式人生 > >RabbitMQ-訂閱者模式

RabbitMQ-訂閱者模式

訂閱模式

模型

這裡寫圖片描述

  一個生產者有多個消費者,每個消費者都有自己的訊息佇列,生產者的訊息都沒有直接傳給訊息佇列,而是先給交換機,就是X(exchange),每個訊息佇列都繫結到交換機上,生產者傳送資訊顯示經過交換機,這樣就達到了一個訊息能被多個消費者消費。

宣告交換機:
Channel.exchangeDeclare(交換機名字,型別);
傳送訊息:
Channel.basicPublish(交換機名字,“”,null,msg.getBytes());最後一個引數為傳送的內容
只宣告這兩行程式碼,就會導致訊息丟失,因為只宣告交換機,交換機沒有儲存功能,只有佇列有儲存功能,所以要寫一個消費者程式碼
繫結佇列到交換機:
Channel.queueBind(訊息,交換機名字,“”);