MQ消息队列的常见用法

消息队列MQ是分布式中重要的组件
目前常见的消息队列有三种:ActiveMQ,RabbitMQ,Kafka

今天我想来梳理一下MQ消息队列的具体常见用法:
1.异步处理
用户注册之后,需要发短信和加积分,注册信息写入数据库后,通过异步消息,让短信服务和积分服务去做它们的事,就提升了代码的质量

2.流量削峰
最常见的就说秒杀场景,秒杀活动会因为流量过大导致流量暴增,甚至应用会挂掉,为了解决这个问题,一般需要在应用前端加入消息队列,从而控制活动的人数,假如消息队列长度超过所设定的,就直接抛弃用户的请求,或者让它跳转到错误的页面,秒杀业务根据消息队列中的信息再作处理

3.日志处理
最典型的就是kafka,kafka的消息队列一开始设计就是为了日志处理,大数据中用的特别多,通过日志采集定时写入kafka队列,然后kafka队列对日志消息进行储存转发

4.应用解耦
比如用户下单后,订单服务需要通知商品服务,如果使用消息队列,不直接调用商品服务的接口,订单服务直接把信息写入消息队列,返回下单成功,商品服务来订阅消息队列,采用拉或者推的方式获得下单信息,这样就可以实现订单服务和商品服务之间的解耦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值