使用AMQP服务端订阅

更新时间:2024-09-14 07:22:19

管理 AMQP 消费组

消费组是消息消费端的身份标识,多个消费者组成消息消费组接入物联网平台。设置 AMQP 服务端订阅后,物联网平台会将收到的设备消息转发到相应消费组,每条被流转到消费组的消息会被其中一个消费者接收。本文介绍如何在物联网平台创建、查看和删除消费组。

工作原理

使用AMQP服务端订阅

AMQP 服务端订阅会将同一产品所有设备的指定类型消息,转发到一个或多个消费组中,每个消费组中随机一个消费者收到消息。不同消费组通过消费组 ID 区分,每个 AMQP 客户端只能配置一个消费组 ID,每个消费组最多包括 64 个 AMQP 客户端。您需要先创建消费组,然后将消费组 ID 配置到 AMQP 客户端,最后配置 AMQP 服务端订阅

  • **订阅关系 1:**将产品 1 的消息转发到消费组 1 和消费组 2。
  • **订阅关系 2:**将产品 2 的消息转发到消费组 2。

AMQP 服务端订阅只能流转同一产品所有设备的指定类型消息,如果需要更灵活的流转设备消息。例如转发部分设备消息到 AMQP 客户端进行消费,可以使用物联网平台提供的云产品流转功能,先指定设备 Topic 消息转发至 AMQP 服务端订阅的消费组,进而流转到消费对应消费组的 AMQP 客户端。

创建消费组

  1. 登录物联网平台控制台

  2. 在左侧导航栏,选择消息转发 > 服务端订阅,单击消费组列表页签。

  3. 单击创建消费组

  4. 创建消费组对话框中,输入组名,单击确认

    消费组名称支持中文、英文字母、日文、数字和下划线(_),长度范围为 4~30 个字符。一个中文或日文占 2 个字符。

查看消费组

您可以查看消费组内订阅的产品,以及消费日志。

  1. 消费组列表中,找到要查看的消费组,并单击对应的查看
  2. 消费组详情页面,单击消费日志页签,可查看具体的消费记录。

删除消费组

警告

删除消费组后,消费组内的所有消费端会停止接收消息,消费组相关的服务端订阅服务不可用,可能导致用户业务中断,请谨慎操作。

用户创建的消费组可以删除,物联网平台的默认消费组不可删除。

  1. 解除订阅。如果消费组已关联订阅关系,则需先解除订阅;如果消费组无订阅关系,请忽略此步骤。
  2. 服务端订阅页面的消费组列表页签下,单击消费组对应的删除,然后单击确认

配置 AMQP 服务端订阅

当需要实时获取设备上报的数据时,如果使用云端 API 只能获取物模型数据,而且可能无法实时获取,使用基于 AMQP 1.0 版协议的AMQP 服务端订阅功能,可以在业务服务器实时、可靠地获取设备上报消息。本文为您介绍配置AMQP 服务端订阅的操作步骤。

前提条件

  • 已创建产品。
  • 已创建消费组。您可使用物联网平台默认消费组(DEFAULT_GROUP)或创建消费组。
  • 设备上报的物模型 Topic 数据必须符合格式,才能触发 AMQP 服务端订阅。设备上报的自定义 Topic 数据没有格式要求。

使用限制

  • 建立连接之后,需要立刻发送认证请求。如果 15 秒内没有认证成功,服务器会主动关闭连接。
  • AMQP 客户端的一个连接限流 1,000 TPS。

如何配置

步骤一:创建消费组

步骤二:创建 AMQP 服务端订阅

在物联网平台控制台创建 AMQP 订阅,关联消费组以及对应的设备消息类型。

  1. 在左侧导航栏,选择消息转发 > 服务端订阅
  2. 服务端订阅页面,单击创建订阅
  3. 创建订阅对话框中,完成配置,单击确认

参数

说明

产品

物联网平台会转发该产品下所有设备的消息。一个产品只能创建一个AMQP服务端订阅。

订阅类型

选择AMQP

消费组

物联网平台提供默认消费组。

选择消费组列表,在右侧选择目标消费组面板,可以选择多个消费组,也可以

单击右下角的创建消费组

推送消息类型

  • 物模型历史数据上报:如果订阅异步服务调用响应数据,设备端返回的响应消息Id必须与物联网平台下发消息的Id相同,才可实现数据正常订阅。

  • OTA模块版本号上报:当设备上报OTA模块版本号,且版本号有变更时进行消息转发。

  • OTA升级设备状态通知:包括升级包验证和批量升级时,设备升级成功、失败、取消和进度的事件通知。

  • OTA升级批次状态通知:设备OTA升级批次状态变化通知。

  • 设备状态变化通知:该产品下的设备上下线状态变化时通知的消息。

  • 网关子设备发现上报:网关将发现的子设备信息上报给物联网平台。需要网关上的应用程序支持。网关产品特有消息类型。

  • 设备拓扑关系变更:子设备和网关之间的拓扑关系建立和解除消息。网关产品特有消息类型。

  • 设备生命周期变更:设备创建、删除、禁用、启用等消息。

  • 设备标签变更:设备上报的标签变更消息。

步骤三:运行 AMQP 客户端