写在前边:本文学习尚硅谷的springboot高级整理笔记。
消息队列是什么,有什么好处?
通过异步处理提高系统性能和削峰、降低系统耦合性。目前使用较多的消息队ActiveMQ,RabbitMQ,Kafka,RocketMQ,我们后面会一一对比这些消息队列。
第一个场景:异步处理
异步处理的好处是:缩短了反馈的时间。
第二个场景:应用解耦
关于解耦我就不赘述重要性了。
第三个场景:流量削峰
比方说一个秒杀需求,一用有10000件商品,如果每笔秒杀订单,都去访问一次数据库,查一查库存,那得花费多长时间啊。
我们可以这样做,用一个消息队列,定制它的长度为10000,10000以内可以存到消息队列,一万10000以后不再近消息队列。
10000以内立马反馈一个秒杀成功。之后再去做减库存等一系列操作。
消息处理的几种方式
- 点对点式:
生产者生产消息,存到消息队列中去,消费者去消息队列里边消费。消费一条消息,就从消息队列移除一条消息,从而保证不重复消费信息。
- 发布订阅式:
发送者发送一个消息主题,消费者以订阅的形式同时收到消息。
两种规范
两种规范的对比:
springboot对消息队列的支持
RabbitMQ小入门
消息队列里边的交换器就像我们网络中的路由器一样。根据消息的路由键来确定去哪个消息队列。
我自己制作了一张图
老师的一张图
rabbitMQ的运行机制
rabbitMQ的交换器exchange类型
标签:异步,10000,springboot,交换器,队列,高级,消息 From: https://blog.51cto.com/u_15812686/5741233