栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

15.每日一读-RabbitMQ的六种队列模式与应用场景

15.每日一读-RabbitMQ的六种队列模式与应用场景

1.MQ的组件:
    生产者:消息提供者消费者:消息使用者MQ服务器:管理队列、消息及相关信息消息:程序间通讯的数据队列:消息存放的容器,消息是先进先出的交换机:用于分发消息
2.RabbitMQ工作模式 2.1 简单模式

无交换机参与。实际工作中几乎用不到。生产者通过MQ将消息放入队列,队列发送给消费者。

2.2 工作队列

类似负载均衡。在多个消息的情况下,工作队列模式会将消息分发给不同的消费者,每个消费者会收到不同的消息,
并且根据处理消息的速度来接收消息的数量,进而让消费者程序发挥最大性能。适用于集群环境中做异步处理,能发挥每台服务器的性能。
高并发情况下,产出消息挤压,可水平扩容,增加消费者实例。

场景:12306的短信服务。

2.3 发布订阅

有交换机参与。生产者的消息,消费者均能接收到。
1.生产者不直接与队列绑定,而是将数据发至交换机
2.交换机用于将数据按某种规则送入与之绑定的队列,进而让消费者使用。
3.交换机将无差别的将所有消息送入与之绑定的队列,所有消费者拿到的消息完全相同。

场景:适用于数据大规模分发的情况。中国气象局提供气象信息,腾讯,网易拿到相同的气象信息。

2.4 路由模式

发布订阅模式的变种。交换机根据routing key有条件将数据筛选后发给消费者队列。
场景:日志。消费者是监控系统,error的错误日志就会放到消费者队列中。

2.5 主题模式

路由模式的升级版。在routing key上添加通配符,具有模糊查询。
*匹配单个关键字
#匹配所有关键字

能用路由不用主题。

2.6 RPC同步通信

该过程线层阻塞。虽然MQ是异步的,一般生产者将消息送至消息队列候不关心消费者什么时候消费,
但有的情况下需要得到消费者的反馈。该模式需要两个队列,没有固定的生产者、消费者。实际用得很少,因为有dubbo。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/748433.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号