springboot高级——消息队列相关

写在前边:本文学习尚硅谷的springboot高级整理笔记。

消息队列是什么,有什么好处?

  我们可以把消息队列比作是一个存放消息的容器,当我们需要使用消息的时候可以取出消息供自己使用。消息队列是分布式系统中重要的组件,使用消息队列主要是为了通过异步处理提高系统性能和削峰降低系统耦合性。目前使用较多的消息队ActiveMQ,RabbitMQ,Kafka,RocketMQ,我们后面会一一对比这些消息队列。

第一个场景:异步处理

 异步处理的好处是:缩短了反馈的时间。

第二个场景:应用解耦

 关于解耦我就不赘述重要性了。

第三个场景:流量削峰

   比方说一个秒杀需求,一用有10000件商品,如果每笔秒杀订单,都去访问一次数据库,查一查库存,那得花费多长时间啊。

我们可以这样做,用一个消息队列,定制它的长度为10000,10000以内可以存到消息队列,一万10000以后不再近消息队列。

10000以内立马反馈一个秒杀成功。之后再去做减库存等一系列操作。

 

 消息处理的几种方式

  •  点对点式:

 生产者生产消息,存到消息队列中去,消费者去消息队列里边消费。消费一条消息,就从消息队列移除一条消息,从而保证不重复消费信息。

  • 发布订阅式:

  发送者发送一个消息主题,消费者以订阅的形式同时收到消息。

两种规范

两种规范的对比:

springboot对消息队列的支持

RabbitMQ小入门

  消息队列里边的交换器就像我们网络中的路由器一样。根据消息的路由键来确定去哪个消息队列。

 我自己制作了一张图

 老师的一张图

rabbitMQ的运行机制

rabbitMQ的交换器exchange类型

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值