node-red:使用node-red-contrib-amqp节点,实现与RabbitMQ服务器(AMQP)的消息传递


node-red-contrib-amqp节点使用

  • 一、简介
    • 1.1 什么是AMQP协议?
    • 1.2 什么是RabbitMQ? -> 开源的AMQP协议实现
    • 1.3 RabbitMQ的WEB管理界面介绍
    • 1.3 如何实现RabbitMQ的数据采集? -> node-red
  • 二、node-red-contrib-amqp节点安装与使用教程
    • 2.1 节点安装
    • 2.2 节点使用
      • 2.2.1 amqp-broker节点
      • 2.2.2 amqp-in节点
      • 2.2.3 amqp-in-manual-ack节点
      • 2.2.4 amqp-out节点

1

回到目录

一、简介

1.1 什么是AMQP协议?

  AMQP,即 Advanced Message Queuing Protocol(高级消息队列协议),是一个网络协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。
  AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。AMQP协议更多用在企业系统内对数据一致性、稳定性和可靠性要求很高的场景,对性能和吞吐量的要求还在其次。
1

详细内容参考链接:RabbitMQ系列四 AMQP协议介绍

回到目录

1.2 什么是RabbitMQ? -> 开源的AMQP协议实现

  RabbitMQ是一个开源的AMQP协议实现,是在AMQP基础上完整的,可复用的企业消息系统。学习参考链接如下:

  • rabbitMQ官网
  • RabbitMQ 详解:环境搭建教程

1.3 RabbitMQ的WEB管理界面介绍

一、总界面
1

  1. connections:无论生产者还是消费者,都需要与RabbirMQ建立连接后才可以完成消息的生产和消费,在这里可以查看连接情况。
  2. channels:通道,建立连接后,会形成通道,以消息的投递获取以来通道。
  3. Excahnges:较平缓及,用来实现消息的路由。
  4. Queues:队列,即消息队列,消息存放在队列中,等待小品非,消费后被移除队列。

二、获取AMQP协议端口
2
三、查看交换机和路由
3

回到目录

1.3 如何实现RabbitMQ的数据采集? -> node-red

   使用node-red的node-red-contrib-amqp节点,连接到RabbitMQ服务器(AMQP),以使用路由键从某个主题获取一些消息,实现客户端与消息中间件数据的传递。

二、node-red-contrib-amqp节点安装与使用教程

2.1 节点安装

1
  node-red安装节点@meowwolf/node-red-contrib-amqp ,基于AMQP协议,实现客户端与消息中间件数据的传递。

回到目录

2.2 节点使用

2.2.1 amqp-broker节点

   amqp-broker节点是指“AMQP消息代理器”,对应一个RabbitMQ实例,是一种中间件,用于接收、存储和转发消息。

这里的端口查看,请转至上节《1.3 RabbitMQ的WEB管理界面介绍》

1

2.2.2 amqp-in节点

1
  该节点能连接到AMQP代理并获取消息,已msg.payload的形式输出,输出格式如下:
1
节点使用说明如下:
1
其中Exchange Info(交换信息)需要根据RabbitMQ中的实际情况进行配置:

  • type:指的是AMQP的消息路由方式,定义了消息如何从一个发送到AMQP消息代理(broker)的交换机(exchange)路由到一个或多个队列。有topic、direct、fanout和headers四种类型。

以下是这四种类型的简要说明:

  1. Topic Exchange
  • 灵活性最强的一种路由方式。它使用通配符来匹配消息的routing key,并支持模糊匹配和精确匹配。
  • 允许发送者指定routing key,并在其中使用通配符(如“*”和“#”)来表示模式。接收者可以通过绑定与这些模式匹配的routing key来接收消息。
  1. Direct Exchange:
  • 最简单的路由方式。它根据消息的routing key进行精确匹配,将消息路由到与该key完全匹配的队列。
  • 发送者和接收者需要就消息的routing key达成一致,以确保消息能够正确路由。
  1. Fanout Exchange
  • 将收到的所有消息广播到与该交换机绑定的所有队列。它不关心消息的routing key,只是简单地将消息分发给所有连接的队列。
  • 适用于需要将消息发送给多个接收者的场景,例如发布-订阅模型。
  1. Headers Exchange
  • 根据消息头的属性进行路由。发送者可以在消息头中设置一组键值对,而接收者可以绑定特定的键值对来接收消息。
  • 提供了比routing key更复杂的匹配逻辑,但性能通常较差,因此在实际应用中较少使用。
  • Exchange Name :交换机名称
  • RoutingName: 指定一个RoutingKey(路由key),将队列与交换机的绑定

使用示例如下:
1
msg.payload输出示例如下:
1
回到目录

2.2.3 amqp-in-manual-ack节点

1
  该节点实现连接到AMQP代理,接收消息,并手动确认收到。与上节amqp-in节点使用及作用相同,不同的地方在于本节点在接收到消息时,要手动确认收到
  此节点默认将 noAck 设置为 false。您必须通过节点输入发送消息来手动确认或拒绝接收。任何未确认的消息将在客户端关闭或重新启动后重新排队。如果您不需要像这样手动确认消息,请使用 amqp-in 节点。有关如何使用此节点的更多信息,请参阅导入库中的示例流。
回到目录

2.2.4 amqp-out节点

1
  连接到AMQP代理并发送消息。
3
回到目录

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LTE之接口协议

一、接口协议栈 接口是指不同网元之间的信息交互方式。既然是信息交互,就应该使用彼此都能看懂的语言,这就是接口协议。接口协议的架构称为协议栈。根据接口所处位置分为空中接口和地面接口,响应的协议也分为空中接口协议和地面接口协议。空…

WEB 3D技术 three.js 通过lil-gui 控制x y z轴数值 操作分组 设置布尔值控制 颜色材质控制

上文 WEB 3D技术 three.js 通过lil-gui管理公共事件中 我们用 lil-gui 处理了一下基础事件和按钮的管理 那么 本文 我们来具体说说它能做的其他事 我们先将基础代码改成这样 import ./style.css import * as THREE from "three"; //引入lil-gui import { GUI } fro…

基于docker-compose 安装Sonar并集成gitlab

文章目录 1. 前置条件2. 编写docker-compose-sonar.yml文件3. 集成 gitlab4. Sonar Login with GitLab 1. 前置条件 安装docker-compose 安装docker 创建容器运行的特有网络 创建挂载目录 2. 编写docker-compose-sonar.yml文件 version: "3" services:sonar-postgre…

算法模板之队列图文详解

🌈个人主页:聆风吟 🔥系列专栏:算法模板、数据结构 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 📋前言一. ⛳️模拟队列1.1 🔔用数组模拟实现队列1.1.1 👻队列的定…

【设计模式】RBAC 模型详解

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、什么是 RBAC 呢? 二、RBAC 的组成 三、RBAC 的优缺点 3.1 优点: 3.2 缺点: 四、RBAC 的…

java定义三套场景接口方案

一、背景 在前后端分离开发的背景下,后端java开发人员现在只需要编写接口接口。特别是使用微服务开发的接口。resful风格接口。那么一般后端接口被调用有下面三种场景。一、不需要用户登录的接口调用,第二、后端管理系统接口调用(需要账号密…

2024华为OD机试真题指南宝典—持续更新(JAVAPythonC++JS)【彻底搞懂算法和数据结构—算法之翼】

PC端可直接搜索关键词 快捷键:CtrlF 年份关键字、题目关键字等等 注意看本文目录-快速了解本专栏 文章目录 🐱2024年华为OD机试真题(马上更新)🐹2023年华为OD机试真题(更新中)🐶新…

《工具箱-SVN》SVN安装、备份、迁移教程

文章目录 一、服务器搭建SVN1.检查SVN是否存在2.安装SVN3.创建版本库4.创建版本库存放文件地址5.修改配置文件5.1 vim authz5.2 vim passwd5.3 vim svnserve.conf 6.启动并查看SVN7.SVN Checkout8.SVN Update9.SVN Commit 二、SVN-无法连接主机,目标计算机积极拒绝&…

【MySQL】表的基本查询

表的基本查询 表的增删查改1. Create(1)单行数据 全列插入(2)多行数据 指定列插入(3)插入否则更新(4)替换 2. Retrieve(1)select 列a. 全列查询b. 指定列查…

【第七在线】数据分析与人工智能在商品计划中的应用

随着技术的不断进步,数据分析和人工智能(AI)已经成为了现代商品计划的关键组成部分。在服装行业,这两项技术正在帮助企业更好地理解市场需求、优化库存管理、提高生产效率和提供更好的客户体验。本文将深入探讨数据分析和人工智能…

java并发编程十 原子累加器和Unsafe

文章目录 原子累加器cas 锁原理之伪共享 UnsafeUnsafe CAS 操作 原子累加器 累加器性能比较 private static <T> void demo(Supplier<T> adderSupplier, Consumer<T> action) {T adder adderSupplier.get();long start System.nanoTime();List<Thread…

2023年12月GESP Python五级编程题真题解析

【五级编程题1】 【试题名称】&#xff1a;小杨的幸运数 【问题描述】 小杨认为&#xff0c;所有大于等于a的完全平方数都是他的超级幸运数。 小杨还认为&#xff0c;所有超级幸运数的倍数都是他的幸运数。自然地&#xff0c;小杨的所有超级幸运数也都是幸运数。 对于一个…

智能优化算法应用:基于金枪鱼群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于金枪鱼群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于金枪鱼群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.金枪鱼群算法4.实验参数设定5.算法结果6.…

LINUX系统安装和管理

目录 一.应用程序 对比应用程序与系统命令的关系 典型应用程序的目录结构 常见的软件包装类型 二.RPM软件包管理 1.RPM是什么&#xff1f; 2.RPM命令的格式 查看已安装的软件包格式 查看未安装的软件包 3.RPM安装包从哪里来&#xff1f; 4.挂载的定义 挂载命令moun…

JavaWeb笔记之SVN

一、版本控制 软件开发过程中 变更的管理&#xff1b; 每天的新内容;需要记录一下&#xff1b; 版本分支;整合到一起&#xff1b; 主要的功能对于文件变更的追踪&#xff1b; 多人协同开发的情况下,更好的管理我们的软件。 大型的项目;一个团队来进行开发; 1: 代码的整合 2: 代…

机器人创新实验室任务三参考文档

一、JAVA环境配置 需要在Linux里面下载并且安装java。 sudo apt-get install openjdk-17-jre-headless 打开终端并且运行指令&#xff0c;用apt下载安装java。官方用的好像是java11&#xff0c;我安装的是java17。 如果无法定位软件安装包&#xff0c;可以试试更新一下 sudo …

4.svn版本管理工具使用

1. 什么是SVN 版本控制 它可以记录每一次文件和目录的修改情况,这样就可以借此将数据恢复到以前的版本,并可以查看数据的更改细节! Subversion(简称SVN)是一个自由开源的版本控制系统。在Subversion管理下,文件和目录可以超越时空 SVN的优势 统一的版本号 Subversi…

【clickhouse】在CentOS中离线安装clickhouse

一、下载地址 通过以下链接进行rpm安装包的下载 https://packages.clickhouse.com/rpm/stable/ 根据需求下载对应版本 注意&#xff1a;ClickHouse 20.8.2.3版本新增加了 MaterializeMySQL 的 database 引擎&#xff0c;该 database 能映射到 MySQL 中的某个 database&#…

算法通关村第十关—归并排序(黄金)

归并排序 一、归并排序原理 归并排序(MERGE-SORT)简单来说就是将大的序列先视为若干个比较小的数组&#xff0c;分成几个比较小的结构&#xff0c;然后是利用归并的思想实现的排序方法&#xff0c;该算法采用经典的分治策略&#xff08;分就是将问题分(divide)成一些小的问题分…

前端常用的工具网站

前端常用的工具网站&#x1f516; 文章目录 前端常用的工具网站&#x1f516;1. 图片在线压缩2. iconfont--矢量图标3. JSON在线格式化4. EMOJIALL--表情符号5. removebg--去除图片背景6. FREE API--免费API接口7. Lorem picsum --随机图片8.UU在线工具 -- 聚合工具 1. 图片在线…