RabbitMQ(保姆级教程)

RabbitMQ学习

基础

1. 同步通信和异步通信

同步调用

下一步动作必须依赖上一步

异步调用

通知到位就行,不对消费者做强制要求,只要求最终一致性就行


2. MQ技术选项

消息先进先出,RabbitMQ默认有序 Erlang 是面向并发,专门解决性能问题,不限制语言,spring官方指定合作伙伴

RabbitMQ

安装
基本介绍

为了交换机命名避免冲突,通过虚拟主机进行隔离

快速入门

AMQP(高级队列消息协议),该协议与语言和平台无关

WorkQueue 实现一个队列绑定多个消费者

一人一半

Fanout 交换机
Direct交换机
Topic 交换机
声明队列和交换机


消息转换器

高级

生产者重连

生产者确认





MQ的可靠性

MQ持久化策略(3.6以前)

LazyQueue



消费者确认机制

消息本身有问题,就可以返回reject

失败重试


业务幂等性


延迟消息

死信交换机
延时队列插件

只适合延时时间间隔短的

相关推荐
Query*6 小时前
分布式消息队列kafka【五】—— kafka海量日志收集实战
分布式·kafka
serendipity_hky8 小时前
【SpringCloud | 第5篇】Seata分布式事务
分布式·后端·spring·spring cloud·seata·openfeign
lang2015092812 小时前
Kafka元数据缓存机制深度解析
分布式·缓存·kafka
qq_3432470313 小时前
单机版认证kafka
数据库·分布式·kafka
武子康13 小时前
Java-199 JMS Queue/Topic 集群下如何避免重复消费:ActiveMQ 虚拟主题与交付语义梳理
java·分布式·消息队列·rabbitmq·activemq·mq·java-activemq
Wang's Blog13 小时前
RabbitMQ: 消息过期机制与死信队列技术解析
rabbitmq
源代码•宸14 小时前
分布式缓存-GO(简历写法、常见面试题)
服务器·开发语言·经验分享·分布式·后端·缓存·golang
A尘埃14 小时前
Java业务场景(高并发+高可用+分布式)
java·开发语言·分布式
苦学编程的谢15 小时前
RabbitMQ_7_高级特性(4)
分布式·rabbitmq
赵榕15 小时前
RabbitMQ发布订阅模式同一消费者多个实例如何防止重复消费?
分布式·微服务·rabbitmq