rabbitmq三 將所有訊息發給每個消費者

2021-06-18 06:44:46 字數 1157 閱讀 3271

1:概念

exchange型別:direct(路由規則),topic(),headers(),fanout(發布訂閱---傳送端**,接收端(全收)繫結)

2:**

傳送端:

channel.exchangedeclare(exchange_name, "fanout");//宣告exchange

for (int i = 0; i <= 2; i++)

channel.close();

connection.close();

接收端1:

channel.exchangedeclare(exchange_name, "fanout");  

string queuename = "log-fb1"; //佇列1名稱

channel.queuedeclare(queuename, false, false, false, null);

channel.queuebind(queuename, exchange_name, "");//把queue、exchange繫結

queueingconsumer consumer = new queueingconsumer(channel);

channel.basicconsume(queuename, true, consumer);

while (true)

接收端2:

channel.exchangedeclare(exchange_name, "fanout");  

string queuename = "log-fb2"; //佇列2名稱

channel.queuedeclare(queuename, false, false, false, null);

channel.queuebind(queuename, exchange_name, "");//把queue、exchange繫結

queueingconsumer consumer = new queueingconsumer(channel);

channel.basicconsume(queuename, true, consumer);

while (true)

RabbitMQ 三 訊息訂閱模式

佇列1繫結 user.表示其只關注使用者相關的訊息。佇列2繫結 order 表示其只關注訂單相關的訊息。佇列3繫結 svip.表示其只關注svip使用者相關的訊息。當傳送訊息指定 vip.user.order 時,因為佇列1與佇列2能匹配,所以會被傳送到佇列1 2中。如果傳送資訊為 common.u...

RabbitMQ(三) 發布訂閱

rabbitmq 三 發布訂閱 一 概述 rabbitmq的發布訂閱 publish subscribe 其將生產者和消費者進一步解耦,生產者生產訊息後,交付給交換機,消費者上線後,主動主動去佇列中取資料進行處理。該模式也符合上一節工作佇列中的ack 預取等規則。發布訂閱模式如下圖所示 二 交換機 ...

訊息中介軟體 RabbitMQ學習(三)

linux系統 erlang 18.3 1.el7.centos.x86 64.rpm rabbitmq server 3.6.5 1.noarch.rpm wget 詳細安裝步驟 rpm ivh erlang 18.3 1.el7.centos.x86 64.rpm rpm ivh socat 1...