RabbitMQ
RabbitMQ
六大模式
Hello Word
消息提供者
消息消费者
Work Queues
抽取工具类
Consumer
消息发送者
消息应答
自动应答
手动应答
消息重新入队
队列持久化
持久化之后再重启服务器,之前持久化的队列还存在,没有持久化的队列会消失
消息持久化
不公平分发
更改消费者的代码
预取值
发布确认
单个发布确认
批量发布确认
异步发布确认
处理异步未确认消息
准备容器
在发消息的时候记录
消息确认
打印失败的消息
交换机
Fanout
演示
消费者
生产者
Direct
多重绑定
Topic
死信队列
死信的来源
代码演示:消息超过TTL
普通消费者
可以选择打印信息:
生产者
死信消费者
队列达到最大长度
在上一个的基础上的普通消费者修改
把生产者的过期时间注释掉
消息被拒
在普通消费者消费消息的时候拒绝,并且修改为手动应答
延迟队列
与springBoot整合之后的代码
配置类
生产者
消费者
加一个不设置过期时间的队列,由生产者生产的时候指定时间
\
controller
使用插件实现延迟队列
配置类
生产者
消费者
发布确认高级
回调接口:交换机确认
对上面的补充代码
回退消息:信道
备份交换机:当备份交换机与接口回调一起使用的时候,前者优先级更高
将原本的交换机修改使只指向备份交换机
声明备份交换机以及备份队列和警告队列
备份交换机绑定队列
警告队列的消费者
其他知识点
幂等性问题
概念
消息重复消费
解决思路
消费端的,幂等性保障
唯一ID+指纹吗机制
Redis原子性
优先级队列
使用场景
控制台添加
代码实现
惰性队列
使用场景
两种模式
内存开销对比
搭建集群
搭建步骤
镜像队列
搭建步骤
匹配规则^mirrior表示以mirrior为前缀的队列进行备份
负载均衡
解决生产者连接MQ时指定MQ宕机,集群可用的,但因为代码指定IP地址而连接不上其他MQ的情况
HAPorxy实现负载均衡
搭建步骤
Federation Exchange
搭建步骤
配置在上游配置
5.添加policy
插件下载完成的界面
Federation Queue
搭建步骤
Shoval
搭建步骤
插件下载之后的界面