RabbitMQ学习

1.视频地址:腾讯课堂 https://ke.qq.com/course/288116#term_id=100341172
慕课网: https://www.imooc.com/learn/1042

2.rabbitMQ的使用场景:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1.RabbitMQ 运行在Linux系统中,
首先要先下载Erlang ,配置运行环境
然后安装RabbitMQ Server
也可以安装RabbitMQ的web管理界面,在浏览器页面上就可以操作RabbitMQ
2.使用RabbitMQ解决什么问题?
2.1如电商系统中,用户下订单服务(同步变异步,服务之间的解耦);
2.2流量削峰.如:秒杀业务;
3.消息队列的基础 知识:
3.1提出两个重要概念即生产者(provider)与消费者(consumer)
3.2 模型: provider ----消息-----> RabbitMQ ----消息------->consumer
4.项目环境搭建
4.1直接生成一个springboot项目
4.2修改pom文件,添加rabbitMQ坐标依赖
4.3在全局的配置文件中配置rabbitMQ相关的信息在这里插入图片描述

5.代码编写
5.1创建队列 new Queue(“队列名称”);
5.2创建消息的发送者,调用相应的api,amqpTemplete
5,3创建消息的接受者,利用消息队列的监听机制,指明监听哪一个队列;

6.RabbitMQ原理:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
7.如何使用:direct交换器?
7.1需求:记录系统日志,日志级别为:info,erro,debug,wrong,采用direct(订阅发布模式)交换器
在这里插入图片描述
7.2项目环境搭建:
搭建两个项目:provider,consumer,
修改两个项目的全局配置文件:
consumer 配置文件中:指定交换器的名称(k-v形式);两个队列的名称;两个rooting-key 的值(string类型,一个rooting-key对应一个队列);
provider 配置文件中指定交换器的名称,两个rooting-key;
编写consumer
在这里插入图片描述在这里插入图片描述
编写Provider:引入交换器的名称,对应的路由键

8.Topic交换器(主题,规则匹配)
9.Fanout交换器(广播)
10.RabbitMQ消息持久化处理?如何实现?
10.1.消息丢失?
provider 不断的往消息队列中发送消息,consumer也不断的在接受消费消息,而在某个时间段,consumer突然宕机,重新修复好之后,在宕机的时间段里provider发送的消息就丢失了…
属性:auot-delete 可理解为暂时的消息队列,consumer一旦宕机,队列就会消失

11.消息确认机制
在这里插入图片描述
consumer端服务出现异常时,rabbitMQ会不断重新发送消息,造成类似死循环的问题?
解决方法:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值