1、点对点

1)、最简单

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

rabbitmq应用场景 随笔 第1张

 

2)、work

rabbitmq应用场景 随笔 第2张

 

prefetch=1:同一条任务只能被一个消费端获取并处理。

 

2、广播(发布/订阅)

1)、fanout:向所有消费端广播

rabbitmq应用场景 随笔 第3张

2)、direct:根据不同的消息向指定消费端发送

rabbitmq应用场景 随笔 第4张

当error消息时,发送给queue1;当info、error、warning时发送给queue2。注意:这里error向C1和C2都发消息。

注意:

rabbitmq应用场景 随笔 第5张

 

当发送的消息是black时,与type=fanout是相同的,即向所有消费端发送。

3)、topic

rabbitmq应用场景 随笔 第6张

与direct的区别是支持模糊匹配

*:只匹配1个词
#:可匹配0-多个词

如:发送消息:

quick.orange.rabbit,则C1/C2都会收到

lazy.orange.elephant,则C1/C2都会收到

quick.orange.fox,只有C1收到

lazy.brown.fox,只有C2收到

lazy.pink.rabbit:只有C2收到,而且只收到1次

quick.brown.fox:没有消费者收到,会被丢弃。

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄