RibbitMQ的五种模式以及使用场景
一.模式
1.简单模式
生产者p将消息放入消息队列中,消费者c监听队列,队列中一旦有消息了就消费掉,并自动将消息从队列中删除。
1.1 应用场景:邮箱的单发,短信单发等等
2.工作模式(资源争抢)
生产者p将消息放入消息队列中,消费者c1,c2监听队列消息,队列中一旦有消息后,c1,c2将通过争抢来获取消息,先到先得。
2.1 应用场景:抢红包
3.发布订阅 publish/subscribe
生产者将消息交给交换机,交换机将消息复制同步到与其绑定的消息队列中,每个队列可以有一个消费者接收消息。
3.1 应用场景:邮件的群发,短信群发,广告
4.路由模式 routing
生产者还是将消息发送给交换机,消息携带具体的路由key(routingKey),交换机类型direct,将接收到的消息中的routingKey,比对与之绑定的队列的routingKey,消费者监听一个队列,获取消息
4.1 应用场景:聊天工具
5.主题订阅模式 topic
生产端发送消息,消息携带具体的路由key,交换机的类型topic,队列绑定交换机不在使用具体的路由key而是一个范围值,’ * ‘表示一个单词,’ # ‘代表零个或多个单词,’ . '为分隔符
5.1 应用场景:做物流分拣的多级传递