topic交換器,即主題模式,進行規則匹配。
配置檔案
2 spring.rabbitmq.host=192.168.50.30
3 spring.rabbitmq.port=5672
4 spring.rabbitmq.username=rabbit
5 spring.rabbitmq.password=rabbit
6#設定交換器名稱
7 mq.config.exchange=log.topic
**
1配置檔案public
class
usersender ")
6private
string exchange;78
public
void
send(string msg)
1314
public
void
send2(string msg)
18 }
2 spring.rabbitmq.host=192.168.50.30
3 spring.rabbitmq.port=5672
4 spring.rabbitmq.username=rabbit
5 spring.rabbitmq.password=rabbit
6#設定交換器名稱
7 mq.config.exchange=log.topic
8#info 佇列名稱
9 mq.config.queue.info=log.info
10#error 佇列名稱
11 mq.config.queue.error=log.error
12#log 佇列名稱
13 mq.config.queue.logs=log.all
inforeceiver
1logsreceiver/**2
@rabbitlistener bindings:繫結佇列
3@queuebinding value:繫結佇列的名稱
4exchange:配置交換器
5@queue value:配置佇列名稱
6autodelete:是否是乙個可刪除的臨時佇列
7@exchange value:為交換器起個名稱
8type:指定具體的交換器型別9*/
10@component
11@rabbitlistener(
12 bindings=@queuebinding(
13 value=@queue(
14 value="$",
15 autodelete="true"
16),
17 exchange=@exchange(
18 value="$",
19 type=exchangetypes.topic
20),
21 key="*.log.info"22)
23)24public
class
inforeceiver
29 }
1/**2
@rabbitlistener bindings:繫結佇列
3@queuebinding value:繫結佇列的名稱
4exchange:配置交換器
5@queue value:配置佇列名稱
6autodelete:是否是乙個可刪除的臨時佇列
7@exchange value:為交換器起個名稱
8type:指定具體的交換器型別9*/
10@component
11@rabbitlistener(
12 bindings=@queuebinding(
13 value=@queue(
14 value="$",
15 autodelete="true"
16),
17 exchange=@exchange(
18 value="$",
19 type=exchangetypes.topic
20),
21 key="*.log.*"22)
23)24public
class
logsreceiver
29 }
RabbitMQ入門 Topic模式
上篇 rabbitmq入門 routing直連模式 我們介紹了可以定向傳送訊息,並可以根據自定義規則派發訊息。看起來,這個routing模式已經算靈活的了,但是,這還不夠,我們還有更加多樣靈活的topic模式。這時候我們給program argument賦值如下,並啟動傳送端程式 程式執行完,可以在...
RabbitMq學習筆記(五) Topic
receivetopicone 匹配規則1 宣告交換器和佇列 channel.exchangedeclare exchange name,topic string queuename channel.queuedeclare getqueue 路由關鍵字規則 string routingkeys n...
RabbitMQ學習筆記(五) Topic
direct exchange幫助我們解決了分類發布與訂閱訊息的問題,但是direct exchange的問題是,它所使用的routingkey是乙個簡單字串,這決定了它只能按照乙個條件進行分類。比如rabbitmq學習筆記 四 routing中的列子,我們是按照新聞的型別分類的,分為game,sp...