SpringBoot 整合 RabbitMQ 注意:
端口 15672:这是 RabbitMQ 管理界面的默认端口,这个端口可以对 RabbitMQ 后台管理。
端口 5672:这是 RabbitMQ 默认的 AMQP 协议端口。客户端通常使用这个端口与 RabbitMQ 服务器建立连接进行消息传递操作。
在配置文件 application.yml 进行 RabbitMQ 配置时,连接端口是 5672。
Work 模型
多个消费者绑定到一个队列,加快消息处理速度。在消费者服务中,可以配置 prefetch 控制消费者预取的消费数量,处理完一条才处理剩余的,类似负载均衡。
为什么需要交换机?
交换机可以实现生产者预消费者解耦,生产者无需关心消息会发送到哪个队列、被哪个消费者消费。生产者只需面向交换机,消费者只需面向队列。
fanout 交换机
fanout 交换机会将所有接收到的消息广播给所有与之绑定的队列。
Direct 交换机
可以指定交换机与哪个队列进行绑定。
Topic 交换机
https://cloud.tencent.com/developer/article/1970418
生产者可靠性
生产者确认
异步确认
MQ可靠性
数据持久化
- 交换机持久化
- 队列持久化
- 消息持久化
消费者可靠性
手动ACK
延迟消息
普通交换机不绑定消费者,相当于让消息在里面等待,如果消息设置了过期时间,当时间到了就到死信交换机,在死信交换机中正常处理,这就达到了延迟消息的效果。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 1216271933@qq.com