您当前的位置: 首页 > 

TechGuide

暂无认证

  • 5浏览

    0关注

    168博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

消息队列学习笔记(新手向纯干货)

TechGuide 发布时间:2020-12-17 12:08:09 ,浏览量:5

恭喜发现宝藏!微信搜索公众号【TechGuide】关注更多新鲜好文和互联网大厂的笔经面经。 作者@TechGuide【全网同名】 点赞再看,养成习惯,您动动手指对原创作者意义非凡🤝

当你的才华还撑不起你的野心时,你应该静下心去学习 。 前言

众所周知,消息队列是在高并发场景下非常好用的工具,可以用来做异步处理、应用解耦和流量削峰。本文将会简略介绍RabbitMQ的原理,之后会集中介绍springboot整合RabbitMQ及其使用,包括队列和路由键的设置,以及延时队列的实现原理和它的应用场景。

正文 一、RabbitMQ介绍

RabbitMQ基于AMQP(高级消息队列协议) 在这里插入图片描述 异步处理、应用解耦、流量削峰。 在这里插入图片描述 在这里插入图片描述在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

二、springboot整合MQ

在这里插入图片描述 1)引入场景启动器,自动配置类就会自动生效,自动配置了RabbitTemplate和AmqpAdmin。 在这里插入图片描述 2)配置连接 在这里插入图片描述 3)开启注解 在这里插入图片描述

三、基本使用

1)amqpAdmin类

交换器 在这里插入图片描述 队列 在这里插入图片描述 绑定 在这里插入图片描述 2)RabbitTemplate收发消息 在这里插入图片描述 在这里插入图片描述 3)监听消息 在这里插入图片描述 在这里插入图片描述 也可以在类上标@RabbitListener注解指定监听哪些消息,类中的各个方法上标注@RabbitHandler,从而监听不同类型消息。 在这里插入图片描述 以下可以模拟多路发送消息/发送多种消息。 在这里插入图片描述

四、可靠性保证 1. 发送端确认

消息投递到服务器、消息投递到队列、消费者接收消息三个环节都可能丢失、出错,分别需要对应的机制保证可靠性。 在这里插入图片描述 1)确认回调ConfirmCallback 在这里插入图片描述 需要自定制RabbitTemplate,并设置ConfirmCallback确认回调机制,并重写confirm方法,传回完成情况和异常原因。 在这里插入图片描述 在这里插入图片描述 correlationData可指定唯一消息ID。 消费方收到消息自动回调confirm方法(只是表示消息到达Broker,不一定被处理),以上参数详细设置如下: 在这里插入图片描述 2)返回回调ReturnCallback 投递失败才回调 在这里插入图片描述

以上属于发送端确认

2. 接收端确认

在这里插入图片描述 在这里插入图片描述 默认自动ack,设置为手动确认模式。

收货策略: 在这里插入图片描述 拒收策略: 在这里插入图片描述

注意:以上需要打开如下所有设置: 在这里插入图片描述

(以上所有截图来自雷神视频)

关注
打赏
1663164218
查看更多评论
立即登录/注册

微信扫码登录

0.0636s