rabbitmq的五种模式

1: 简单模式

rabbitmq的五种模式_第1张图片

说明: 生产者将消息交给默认的交换机(AMQP default),交换机将获取到的信息绑定这个生产者对应的队列上,监听当前队列的消费者获取消息,执行消息消费。

应用场景: 短信,聊天。

2: 工作模式 

rabbitmq的五种模式_第2张图片

说明: 生产者将消息交给默认的交换机(AMQP default),交换机将获取到的信息绑定这个生产者对应的队列. 由于监听这个队列的消费者较多,并且消息只能有一个被消费,就会造成消息竞争

应用场景: 抢红包,和资源任务调度

3: 发布订阅模式

rabbitmq的五种模式_第3张图片

说明: 生产者将消息给交换机,交换机根据自身的类型(fanout)将会把所有消息复制同步到所有与其绑定的队列,每个队列可以有一个消费者接收消息进行消费逻辑

应用场景:邮件群发,广告

4: 路由模式

rabbitmq的五种模式_第4张图片

说明: 生产者将消息发送到交换机信息携带具体的路由key,交换机的类型是direct,将接收到的信息中的routingKey,比对与之绑定的队列routingkey。消费者监听一个队列,获取消息,执行消费逻辑,

应用场景: 根据生产者的要求发送给特定的一个或者一批队列发送信息。

 

5: topic主题模式

rabbitmq的五种模式_第5张图片

说明: 生产者发送消息,消息中带有具体的路由key,交换机的类型是topic,队列绑定交换机不在使用具体的路由key而是一个范围值,例如: *.yell.*,hlll.iii,jjj.#。其中* 表示一个字符串(不能携带特殊字符)#表示任意

 

这些模式对应的代码下篇文章中会有代码,有兴趣的可以来交流一下,不足之处请指点

 

你可能感兴趣的:(rabbitmq的五种模式)