服务端可以直接订阅产品下多种类型的消息,例如设备上报消息、设备状态变化通知、设备生命周期变更、网关发现子设备上报、设备拓扑关系变更等。配置服务端订阅后,物联网平台会将产品下所有设备中已订阅类型的消息,转发至您的服务器。
使用场景
服务端订阅可应用于以下场景:
- 服务端单纯的接收设备数据的场景,并且适用于高并发场景。
- 服务端接收产品下全部设备的订阅数据。
服务端订阅与规则引擎数据流转的使用场景和能力对比,请参见 数据流转方案对比 。
使用AMQP服务端订阅消息
AMQP(Advanced Message Queuing Protocol)即高级消息队列协议。您配置AMQP服务端订阅后,物联网平台会将产品下所有已订阅类型的消息,通过AMQP通道推送至您的服务器。
AMQP服务端订阅消息流转流程如下图所示。

AMQP服务端订阅优势:
-
支持多消费组。同一个账号,可以在开发环境下使消费组A订阅产品A,同时在正式环境下使消费组B订阅产品B。
说明 如果多个不同消费组同时订阅产品B,则不同消费组可同时收到来自设备B的相同信息。
- 方便排查问题。支持查看客户端状态、查看堆积和消费速率。
- 线性扩展。在消费者能力足够,即客户端机器足够的情况下,可轻松线性扩展推送能力。
-
实时消息优先推送,消息堆积不会影响服务。
设备实时消息直接推送,推送限流或失败时进入堆积队列,堆积态消息采用降级模式,不会影响实时推送能力。
即使消费者的客户端宕机,或因消费能力不足堆积了消息,消费端恢复后,设备生成的消息也可以和堆积消息并行发送,使设备优先恢复实时推送消息状态。
使用AMQP服务端订阅,需先在控制台配置AMQP服务端订阅,请参见 配置AMQP服务端订阅 。然后开发AMQP客户端,接入物联网平台,接收消息,请参见 AMQP客户端接入说明 。
使用MNS服务端订阅消息
物联网平台将订阅的消息推送到消息服务(MNS)的队列中,您的服务器MNS客户端通过监听MNS队列接收设备消息。
MNS服务端订阅消息流转流程如下图所示。

使用消息服务订阅设备消息的具体配置方法,请参见 使用消息服务(MNS)订阅设备消息 。