RabbitMQ(保姆级教程)

RabbitMQ学习

基础

1. 同步通信和异步通信

同步调用

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

异步调用

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


2. MQ技术选项

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

RabbitMQ

安装
基本介绍

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

快速入门

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

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

一人一半

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


消息转换器

高级

生产者重连

生产者确认





MQ的可靠性

MQ持久化策略(3.6以前)

LazyQueue



消费者确认机制

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

失败重试


业务幂等性


延迟消息

死信交换机
延时队列插件

只适合延时时间间隔短的

相关推荐
麦兜*6 小时前
深入解析现代分布式事务架构:基于Seata Saga模式与TCC模式实现金融级高可用与数据最终一致性的工程实践全解析
分布式·金融·架构
難釋懷7 小时前
分布式锁-redission功能介绍
分布式
only-qi10 小时前
微服务场景下,如何实现分布式事务来保证一致性?
分布式·微服务·架构
m0_5648768411 小时前
Distributed data parallel (DDP)分布式训练
分布式
BYSJMG12 小时前
计算机毕设选题推荐:基于Hadoop的交通事故数据可视化分析系统
大数据·vue.js·hadoop·分布式·后端·信息可视化·课程设计
野犬寒鸦12 小时前
从零起步学习并发编程 || 第三章:JMM(Java内存模型)详解及对比剖析
java·服务器·开发语言·分布式·后端·学习·spring
虫小宝14 小时前
查券返利机器人的异步任务调度:Java XXL-Job+Redis实现海量查券请求的分布式任务分发
java·redis·分布式
yq19820430115615 小时前
构建高可用资源导航平台:基于Django+Scrapy的分布式架构实践
分布式·scrapy·django
你这个代码我看不懂16 小时前
Kafka常见问题解答
分布式·kafka
Tony Bai16 小时前
Git 即数据库:Beads (bd) —— 专为 AI Agent 打造的分布式任务追踪引擎
数据库·人工智能·分布式·git