当前位置: 首页 > ds >正文

RabbitMQ概念详解

什么是消息队列?

消息队列是一种在应用程序之间传递消息的技术。它提供了一种异步通信模式,允许应用程序在不同的时间处理消
息。消息队列通常用于解耦应用程序,以便它们可以独立地扩展和修改。在消息队列中,消息发送者将消息发送到
队列中,然后消息接收者从队列中接收消息。这种模式允许消息接收者按照自己的节奏处理消息,而不必等待消息
发送者处理完消息。常见的消息队列包括RabbitMQKafkaActiveMQ等。

接下来主要先描述RabbitMQ
在这里插入图片描述

主要模块有Connections, Channels ,Exchanges,Queues和Admin
其中Admin主要是用来管理RabbitMQ的服务资源,可以用来创建用户;

Exchange和Queue是一组传递消息的核心组件;
在这里插入图片描述
消息都是通过Queue队列传递;典型的FIFO的队列数据结构。
Exchange交换机则是用来辅助消息分发的。Exchange与Queue之间会建立一种绑定的关系,通过绑定关系,Exchange交换机里发送的消息就可以分发到不同的Queue上。
对于队列,有Classic ,Quorum,Stream三种类型。
Exchange只需要与生产者绑定,消费者方面不需要与Exchange打交道,只要从Queue中消费消息就可以。

Connection和channel
一个Connection可以理解为一个客户端应用,一个应用可以创建多个Channel。用来与RabbitMQ进行交互;
在这里插入图片描述
一旦客户端与RabbitMQ建立了连接,就会分配一个AMQP信道 Channel。每个信道都会被分配一个唯一的ID。也可以理解为是客户端与RabbitMQ实际进行数据交互的通道,我们后续的大多数的数据操作都是在信道 Channel 这个层面展开的。

RabbitMQ中进行数据路由的重要组件。消息发送到RabbitMQ中后,会首先进入一个交换机,然后由交换机负责将数据转发到不同的队列中。RabbitMQ中有多种不同类型的交换机来支持不同的路由策略。从Web管理界面就能看到,在每个虚拟主机中,RabbitMQ都会默认创建几个不同类型的交换机来。

在这里插入图片描述
Queue结构天生就具有FIFO的顺序,消息最终都会被分发到不同的Queue当中,然后才被消费者进行消费处理。这也是最近RabbitMQ功能变动最大的地方。最为常用的是经典队列Classic。
RabbitMQ 3.8.X版本添加了Quorum队列,3.9.X又添加了Stream队列。从官网的封面就能看到,现在RabbitMQ主推的是Quorum队列。

http://www.xdnf.cn/news/5554.html

相关文章:

  • 文件(分片)并行上传时计算总的上传进度
  • 如何在Unity中进行四舍五入
  • Apache Ranger 2.2.0 编译
  • 华为云Flexus+DeepSeek征文|DeepSeek-V3/R1商用服务开通教程以及模型体验
  • TSN网络与DIOS融合:破解煤矿井下电力系统越级跳闸难题
  • Python-MCPInspector调试
  • STC-ISP烧录过程中显示“正在检测目标单片机...”
  • 基于Flask、Bootstrap及深度学习的水库智能监测分析平台
  • 闲鱼智能客服机器人-实现闲鱼平台7×24小时自动化值守
  • # 2-STM32-复位和时钟控制RCC
  • MySql(基础)
  • spark:map 和 flatMap 的区别(Scala)
  • CentOS7离线安装Mysql8
  • 分治算法
  • K8S cgroups详解
  • 【Bluedroid】蓝牙HID DEVICE断开连接流程源码分析
  • 【android bluetooth 框架分析 02】【Module详解 5】【HciLayer 模块介绍】
  • Python3安装HTMLTestRunner
  • 企业内训|智能调控系统算法与优化——某汽车厂商
  • 如何反向绘制出 .NET程序 异步方法调用栈
  • 设计模式学习整理
  • 自然语言处理NLP中的连续词袋(Continuous bag of words,CBOW)方法、优势、作用和程序举例
  • 多空短线决策+飞云分仓操盘,两个副图指标组合操盘技术,短线更精准有效
  • 华为IP(6)
  • 嵌入式硬件篇---SPI
  • 虚幻引擎5-Unreal Engine笔记之常用核心类的继承关系
  • #微调重排序模型:Reranking从入门到实践
  • 医院药品管理系统(准备工作)
  • 元数据和主数据
  • 从代码学习深度学习 - 转置卷积 PyTorch版