RabbitMQ3.x之五_RabbitMQ中的核心概念

RabbitMQ3.x之五_RabbitMQ中的核心概念

文章目录

  • RabbitMQ3.x之五_RabbitMQ中的核心概念
  • 1. RabbitMQ简介
    • 1. 可互操作
    • 2. 灵活
    • 3. 可靠
  • 2. 核心概念
    • 1. Message(消息)
    • 2. Publisher(生产者)
    • 3. Consumer(消费者)
    • 4. Exchange(交换机)
    • 5. Queue(队列)
    • 6. Binding(绑定)
    • 7. Routing-Key(路由键)
    • 8. Connection(连接)
    • 9. Virtual Host(**虚拟主机**)
    • 10. Broker
    • 10. Broker

1. RabbitMQ简介

RabbitMQ是一个由erlang开发的AMQP(Advarved Message Queue Protocol)的开源实现.

RabbitMQ 是一个可靠且成熟的消息传递和流代理,易于部署在云环境、本地和本地计算机上。它目前被全球数百万人使用。

1. 可互操作

RabbitMQ 支持多种开放标准协议,包括 AMQP 1.0 和 MQTT 5。有多个可用的客户端库,可以与您选择的编程语言一起使用,只需选择一个即可。没有供应商锁定!

2. 灵活

RabbitMQ 提供了许多选项,您可以组合这些选项来定义消息如何从发布者传递到一个或多个使用者。路由、筛选、流式处理、联合身份验证等,应有尽有。

3. 可靠

通过确认消息传递和跨集群复制消息的功能,您可以使用 RabbitMQ 确保您的消息是安全的。

2. 核心概念

1. Message(消息)

在 RabbitMQ 中,消息是指要传递的数据单元,它由消息头和消息体构成。它可以是任何形式的数据,例如文本、JSON、XML 等等。消息由生产者发布到队列中,然后由消费者消费。消息体是不透明的,而消息头则由一系列的可选属性组成,这些属性包括routing-key(路由键)、priority(相对于其他消息的优先权)、delivery-mode(指定消息可能需要持久存性存储)等。

2. Publisher(生产者)

消息的生产者,也是一个向交换器发布消息的客户端应用程序。生产者是发送消息到队列的应用程序。它们创建消息并将其发送到队列,使其可供消费者使用

3. Consumer(消费者)

消费者是接收和处理消息的应用程序。它们从队列中获取消息,并根据业务逻辑对其进行处理。消费者可以是单个进程、线程或者是分布式系统中的一个组件。消息的消费者,表示一个从消息队列中取得消息的客户端应用程序。

4. Exchange(交换机)

交换器,用来接收生产者发送的消息并将这些消息路由给服务器中的队列。Exchange有4种类型:direct(默认),fanout,topic,和headers,不同类型的Exchange转发消息的策略有所区别

5. Queue(队列)

消息队列,用来保存消息直到消息发送给消费者。它是消息的容器,也是消息的终点。一个消息可投入一个或多个队列。消息一直在队列里,等待消费者连接到这个消息队列将其取走。

6. Binding(绑定)

绑定,用于消息队列和交换器直接的关联。一个绑定就是基于路由键将交换器和消息队列连接起来的路由规则,所以可以将交换器理解成一个由绑定构成的路由表。

Exchange 和Queue的绑定可以是多对多的关系。

7. Routing-Key(路由键)

路由键是生产者在将消息发送到交换机时附加的标识符。交换机使用路由键来决定将消息路由到哪个队列。

8. Connection(连接)

网络连接,比如一个TCP连接。

9. Virtual Host(虚拟主机)

虚拟主机是RabbitMQ 中用于隔离应用程序和数据的逻辑容器。每个虚拟主机拥有自己的一组交换机、队列和绑定,使得不同的应用程序能够在同一个 RabbitMQ 实例上独立运行而不会互相干扰。

虚拟主机,表示一批交换器、消息队列和相关对象。虚拟主机是共享相同的身份认证和加密环境的独立服务器域。每个vhost 本质上就是一个 mini版的 RabbitMQ 服务器,拥有自己的队列、交换器、绑定和权限机制。vhost 是 AMQP 概念的基础,必须在连接时指定RabbitMQ 默认的 vhost 是 /

10. Broker

表示消息队列服务器实体

在连接时指定RabbitMQ 默认的 vhost 是 /

10. Broker

表示消息队列服务器实体

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/497628.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Triton推理服务器部署YOLOv8实战

课程链接:Triton推理服务器部署YOLOv8实战_在线视频教程-CSDN程序员研修院 Triton Inference Server(Triton 推理服务器)是一个高性能、灵活、可扩展的推理服务器,支持多种机器学习框架(PyTorch、ONNX等)和…

核验用户提供的身份证号和姓名是否一致的实名认证接口、C#调用

为什么要进行实名认证?互联网时代,网民在网上进行遨游的过程中,我们无法辨别其身份的真伪,网民财产安全没有保障,因此当平台用户在进行注册时,都会要求提供身份证信息使用实名认证接口来判断身份信息的真实…

无忧微服务:如何实现大流量下新版本的发布自由

作者:项良、十眠 微服务上云门槛降低,用好微服务才是关键 据调研数据显示,约 70% 的生产故障是由变更引起的。在阿里云上的企业应用如茶百道、极氪汽车和来电等,他们是如何解决变更引起的稳定性风险,实现了在白天高流…

牛客NC26 括号生成【中等 递归 Java,Go,PHP】

题目 题目链接: https://www.nowcoder.com/practice/c9addb265cdf4cdd92c092c655d164ca 思路 答案链接:https://www.lintcode.com/problem/427/solution/16924 参考答案Java import java.util.*;public class Solution {/*** 代码中的类名、方法名、参…

江协科技STM32:按键控制LED光敏传感器控制蜂鸣器

按键控制LED LED模块 左上角PA0用上拉输入模式,如果此时引脚悬空,PA0就是高电平,这种方式下,按下按键,引脚为低电平,松下按键,引脚为高电平 右上角PA0,把上拉电阻想象成弹簧 当按键…

【电路笔记】-交流电路波形的形状因子

波形的形状因子 文章目录 波形的形状因子1、概述2、正弦波波形因子3、波形因子示例14、波形因子示例25、单相半波整流波形6、单相全波整流波形7、三角波形形状因子8、锯齿波形因子9、方波和脉冲波形10、总结波形因子描述波形的形状或结构,是其均方根值与其平均值的比率。 1、概…

nacos的各种类型的配置文件 yml 、json、 Properties、 text 等文件类型 发生变化怎么热更新,实现实时监听nacos配置文件变化

本文用的是 Nacos作为配置中心注册监听器方法 实现热更新 nacos 配置文件 从而不用重启项目 依赖、工具类 这边就不写了 因为项目用的是 Json 类型的配置文件 所以下文 主要是对json文件进行实现 别的文件大同小异 先说扯淡的东西 在nacos 的配置文件中 dataId 这两种声明 是…

eclipse自动跳到console 解决办法

eclipse启动服务后,想看一些properties信息或者别的,但老是自动跳转到console页面,下面是解决办法: Eclipse中按照如下顺序找到设置菜单的位置: Window — Preferences — Run/Debug — Console 找到以下两项&#xf…

网络:udptcp套接字

目录 协议 网络传输基本流程 网络编程套接字 udp套接字编程 udp相关代码实现 sock函数 bind函数 recvfrom函数 sendto函数 udp执行指令代码 popen函数 udp多线程版收发消息 tcp套接字编程 tcp套接字代码 listen函数 accept函数 read/write函数 connect函数 recv/…

第二十一章 Jquery ajax

文章目录 1. jquery下载2. jquery的使用3. jquery页面加载完毕执行4. jquery属性控制6. 遍历器 2. ajax1. 准备后台服务器2. ajax发送get请求3. ajax发送post请求 1. jquery下载 点击下载 稳定版本1.9 2. jquery的使用 存放到html文件的同级目录 3. jquery页面加载完毕执行…

verilog设计-cdc:多比特信号跨时钟域(DMUX)

一、前言 多比特一般为数据,其在跨时钟域传输的过程中有多种处理方式,比如DMUX,异步FIFO,双口RAM,握手处理。本文介绍通过DMUX的方式传输多比特信号。 二、DMUX同步跨时钟域数据 dmux表示数据分配器,该方…

HarmonyOS 应用开发之UIAbility组件生命周期

概述 当用户打开、切换和返回到对应应用时,应用中的UIAbility实例会在其生命周期的不同状态之间转换。UIAbility类提供了一系列回调,通过这些回调可以知道当前UIAbility实例的某个状态发生改变,会经过UIAbility实例的创建和销毁,…

PCB损耗来源

信号经过PCB板会产生损耗,主要包括导体损耗,介电损耗和辐射损耗 导体损耗:导体损耗是由于电流流动过程中产生电阻损耗而发热。 介电损耗:介电损耗是由于电场通过介质时分子的交替极化和晶格碰撞造成的。 辐射损耗:辐…

React 应用实现监控可观测性最佳实践

前言 React 是一个用于构建用户界面的 JavaScript 框架。它采用了虚拟 DOM 和 JSX,提供了一种声明式的、组件化的编程模型,以便更高效地构建用户界面。无论是简单还是复杂的界面,React 都可以胜任。 YApi 是使用 React 编写的高效、易用、功…

报表生成器FastReport .Net用户指南:脚本示例

FastReport的报表生成器(无论VCL平台还是.NET平台),跨平台的多语言脚本引擎FastScript,桌面OLAP FastCube,如今都被世界各地的开发者所认可,这些名字被等价于“速度”、“可靠”和“品质”,在美国&#xff…

[Flutter]环境判断

方式一(推荐) 常量kReleaseMode,它会根据你的应用是以什么模式编译的来获取值。bool.fromEnvironment会从Dart编译时的环境变量中获取值。对于dart.vm.product这个特定的环境变量,它是由Dart VM设置的,用来标明当前是…

基于PaddleNLP的深度学习对文本自动添加标点符号(二)

前言 基于PaddleNLP的深度学习对文本自动添加标点符号的源码版来了,本篇文章主要讲解如何文本自动添加标点符号的原理和相关训练方法,前一篇文章讲解的是使用paddlepaddle已经训练好的一些模型,在一些简单场景下可以通过这些模型进行预测&…

华为防火墙配置指引超详细(包含安全配置部分)以USG6320为例

华为防火墙USG6320 华为防火墙USG6320是一款高性能、高可靠的下一代防火墙,适用于中小型企业、分支机构等场景。该防火墙支持多种安全功能,可以有效抵御网络攻击,保护网络安全。 目录 华为防火墙USG6320 1. 初始配置 2. 安全策略配置 3. 防火墙功能配置 4. 高可用性配…

Git,GitHub,Gitee,GitLab 四者有什么区别?

目录 1. Git 2. GitHub 3. Gitee 4. GitLab 5. 总结概括 1. Git Git 是一个版本管理工具,常应用于本地代码的管理,下载完毕之后,我们可以使用此工具对本地的资料,代码进行版本管理。 下载链接: Git - Downlo…

前端项目在本地localhost可以调取到拍照或麦克风等设备,但是在局域网内IP+端口号访问项目时访问不到设备

前端项目在本地localhost可以调取到拍照或麦克风等设备,但是在局域网内IP端口号访问项目时访问不到设备,调取navigation.mediaDevices时本科可以获取到mediaDevices列表,局域网内ip端口访问时获取不到mediaDevices。 原因: 存在…
最新文章