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

EdgeX Message Bus 消息总线

EdgeX Message Bus 消息总线

概述

EdgeX MessageBus 内部消息总线,用于 EdgeX 服务之间的内部通信。 EdgeX 服务是指来自 EdgeX 的任何核心/支持/应用程序/设备服务或使用 EdgeX SDK 构建的任何自定义应用程序或设备服务

EdgeX MessageBus 用于内部 EdgeX 服务与服务之间的通信。它并不意味着作为外部服务与内部 EdgeX 服务通信的入口点。 eKuiper 规则引擎是一个例外,因为它与 EdgeX 紧密集成。

用作外部入口点的 EdgeX 服务包括:

  • REST API - 以非安全模式直接访问或通过API网关 以安全模式运行
  • 使用外部 MQTT 触发器的应用服务 - 配置为使用外部 MQTT 触发器的应用服务将在 “外部” 上接受来自外部 MQTT 连接服务的数据。
  • 使用 HTTP 触发器的应用服务 - 配置为使用 HTTP 触发器的应用服务将接受数据来自 “外部” 上的外部服务休息连接。访问方式与其他 EdgeX REST API 相同。
  • 使用自定义触发器的应用服务 - 配置为使用自定义触发器的应用服务可以接受数据来自外部服务或通过附加协议,几乎没有限制。
  • Core Command 外部 MQTT 连接 - Core Command 现在通过独立于 EdgeX MessageBus 的外部 MQTT 连接接收命令请求并发布响应。请求被转发到 EdgeX MessageBus,相应的响应被转发回外部 MQTT 连接。

最初,EdgeX MessageBus 仅用于将事件/读数(Event/Readmings)从核心数据发送到应用程序服务层。在最近的版本中, 更多服务使用 EdgeX MessageBus 而不是 REST 进行服务间通信。

  • 设备服务将事件/读数直接发布到 EdgeX MessageBus,而不是通过 REST 将其发送到 Core Data。
  • 服务指标发布到 EdgeX MessageBus。
  • 系统事件发布到 EdgeX MessageBus。
  • 命令请求/响应 现在由核心命令和设备服务发布到 EdgeX MessageBus。
  • 通过 EdgeX MessageBus 从核心元数据到设备服务的设备验证请求。

二、消息封装

发布到 EdgeX MessageBus 的所有消息都包装在 MessageEnvelope 中。此封装包含描述消息有效负载的元数据,例如有效负载内容类型(JSON 或 CBOR)、相关 ID 等。

三、实现原理

EdgeX MessageBus 由 go-mod-messaging 中实现的消息总线抽象定义。该模块定义了一个抽象客户端 API,目前有四种用于不同底层消息总线协议的 API 实现。

3.1 通用消息总线配置

常见 MessageBus 配置:

  • 类型: Type - 指定要使用以下哪种实现。
    • Redis Pub/Sub(默认)- Type=redis
    • MQTT 3.1 - Type=mqtt
http://www.lryc.cn/news/507050.html

相关文章:

  • 【JavaEE进阶】关于Maven
  • YOLOv9-0.1部分代码阅读笔记-autoanchor.py
  • Electronjs+Vue如何开发PC桌面客户端(Windows,Mac,Linux)
  • 谷歌浏览器 安装谷歌浏览器特定版本后禁止自动更新
  • Linux计算时间差
  • Python的3D可视化库【vedo】2-5 (plotter模块) 坐标转换、场景导出、添加控件
  • 【VUE】13、安装nrm管理多个npm源
  • 【SQL/MySQL 如何使用三种触发器】SQL语句实例演示
  • Docker容器五种网络驱动模式详解
  • netfilter简介及流程图
  • Vue 前端代码规范
  • JAVA:组合模式(Composite Pattern)的技术指南
  • js常用方法之: 预览大图(uniapp原生方法封装)
  • python 高级用法
  • TISAX认证最新消息
  • Python中所有子图标签Legend显示详解
  • python脚本中使用git命令
  • 本地maven项目打包部署到maven远程私库
  • 自己搭建专属AI:Llama大模型私有化部署
  • [免费]SpringBoot公司财务管理系统【论文+源码+SQL脚本】
  • 5G 模组 RG500Q常用AT命令
  • 【YOLO 项目实战】(11)YOLO8 数据集与模型训练
  • 基于matlab的单目相机标定
  • DB-GPT 智谱在线模型配置
  • Navicat 17 功能简介 | SQL 美化
  • RTA_OS内核源码解析 3.9-任务激活
  • 新能源汽车充电需求攀升,智慧移动充电服务有哪些实际应用场景?
  • 计算机的错误计算(一百八十六)
  • 当我用影刀AI Power做了一个旅游攻略小助手
  • 首批|云轴科技ZStack成为开放智算产业联盟首批会员单位