首頁>Club>
14
回覆列表
  • 1 # 寫程式設計師的程式碼

    定義

    MQ全稱為Message Queue, 訊息佇列(MQ)是一種應用程式對應用程式的通訊方法。MQ是消費-生產者模型的一個典型的代表,一端往訊息佇列中不斷寫入訊息,而另一端則可以讀取佇列中的訊息。

    RabbitMQ是MQ的一種。

    概念 簡單佇列模式和工作模式

    佇列是RabbitMQ的內部物件,用於儲存訊息。生產者(下圖中的P)生產訊息並投遞到佇列中,消費者(下圖中的C)可以從佇列中獲取訊息並消費。

    多個消費者可以訂閱同一個佇列,這時佇列中的訊息會被平均分攤給多個消費者進行處理,而不是每個消費者都收到所有的訊息並處理。

    2. 釋出訂閱模式

    路由模式和主題模式

    路由模式跟釋出訂閱模式類似,然後在訂閱模式的基礎上加上了型別,訂閱模式是分發到所有繫結到交換機的佇列,路由模式只分發到繫結在交換機上面指定路由鍵的佇列。

    topics 主題模式跟 routing 路由模式類似,只不過路由模式是指定固定的路由鍵 routingKey,而主題模式是可以模糊匹配路由鍵 routingKey,類似於SQL中 = 和 like 的關係。

    4. RPC模式

    總結

    以上就是rabbitmq在實際應用中具體的功能概念,具體使用哪種模式要根據業務需要。

  • 中秋節和大豐收的關聯?
  • 目前大齡青年找媳婦重要,還是找工作重要?