初识MQ
MQ消息队列,是事件驱动架构中的Broker。
RabbitMQ快速入门
常见消息模型
基本消息队列
工作消息队列
发布订阅
SpringAMQP
发送消息
导入AMQP依赖
配置rabbitmq相关信息
使用springamqp
接收消息
引入依赖,填写配置(略)
编写消费类
Work Queue工作队列
假设一秒钟消息的发送者会发送五十条消息,而两个接收者的效率不同。消费者1的取的能力大于消费者2取的能力,但是由于消息预取机制,两个消费者都拿到相同的消息导致消费的时间超过界限。可以通过修改配置文件设置消费预取限制。
发布与订阅
Fanout Exchange
该模式下会将接收到的消息路由到每一个跟其绑定的queue。
步骤:1)消费端编写配置类添加交换机和队列然后绑定队列和交换机
2)消费者接收消息
3)发送端编写发送的代码
DirectExchange
步骤:1)这次创建交换器和队列以及两者的绑定关系不额外写个配置类使用@Bean的方式创建,而是直接在消费端中使用@RabbitListener中创建
2)发送端编写发送的代码
TopicExchange
步骤:1)
2)
消息转换器
在SpringAMQP的发送方法中,接收消息的类型是Object,SpringAMQP可以帮我们序列化为字节后发送。
我们可以通过以下步骤修改序列化方式(使用json的序列化)
引入依赖
申明MessageConverter
接收消息的时候,发送方是什么格式的,接收就定义什么格式的接收就好