大厂面试真题-什么是消息队列

目录

概述

生产者:Producer

代理:Broker

消费者:Consumer

消息队列的应用场景

异步处理

应用解耦

流量削峰

​编辑目前市面上常见的消息队列中间件主要有


蜗牛学苑-重构IT职业教育新生态

概述

消息队列Message Queue,简称MQ。

是一种应用间的通信方式,主要由三个部分组成

产者:Producer

消息的产生者与调用端

主要负责消息所承载的业务信息的实例化

是一个队列的发起方

代理Broker

主要的处理单元

负责消息的存储、投递、及各种队列附加功能的实现

消息队列最核心的组成部分

消费者:Consumer

一个消息队列的终端

也是消息的调用端

具体是根据消息承载的信息,处理各种业务逻辑。

消息队列的应用场景

消息队列的应用场景较多,常用的可以分为三种:

步处理

主要应用于对实时性要求不严格的场景,

比如:用户注册发送验证码、下单通知、发送优惠券等等。

服务方只需要把协商好的消息发送到消息队列,

剩下的由消费消息的服务去处理,不用等待消费服务返回结果。

应用解

用解耦可以看作是把相关但耦合度不高的系统联系起来。

订单系统与WMS、EHR系统,有关联但不哪么紧密

每个系统之间只需要把约定的消息发送到MQ,另外的系统去消费即可。

解决了各个系统可以采用不同的架构、语言来实现,从而大大增加了系统的灵活性。

流量削

流量削峰一般应用在大流量入口且短时间内业务需求处理不完的服务中心,

为了权衡高可用,把大量的并行任务发送到MQ中,

依据MQ的存储及分发功能,平稳的处理后续的业务,

起到一个大流量缓冲的作用。

目前市面上常见的消息队列中间件主要有

ActiveMQRabbitMQKafkaRocketMQ

在架构技术选型的时候一般根据业务的需求选择合适的中间件:

比如中小型公司,低吞吐量的一般用ActiveMQ、RabbitMQ较为合适,

大数据高吞吐量的大型公司一般选用Kafka和RocketMQ

蜗牛学苑-重构IT职业教育新生态

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值