本文介绍服务端订阅的使用限制。

AMQP订阅使用限制

限制项 描述
认证超时 连接建立之后,需要立刻发送认证请求。如果15秒内没有认证成功,服务器将主动关闭连接。
数据超时 服务端与物联网平台建立连接时,需传入心跳时间(AMQP协议参数idle-timeout),取值范围为30~300秒。 如果超过心跳时间,连接上无任何帧通信,物联网平台将关闭连接。
连接建立后,用户服务端需在心跳时间内发送PING包来维持连接。若没有在心跳时间内发送PING包,物联网平台将断开连接。
说明 使用阿里云提供的SDK,建立连接后,无需发送PING包维持连接。SDK存在保活心跳,只需保证主进程不退出即可。
失败推送重试策略

由于消费客户端离线、消息消费慢等原因,消息不能实时消费,而进入堆积队列。

  • 消费客户端重新上线并恢复稳定消费能力后,云端重试推送堆积消息。
  • 如果客户端对重试推送的消息消费失败,可能导致堆积队列阻塞。按大约一分钟间隔,云端向客户端再次重试推送。
消息保存条数 单消费组最多可堆积1亿条消息。
消息保存时长 1天。
实时消息推送限流 单消费组限流1,000 QPS。
堆积消息推送限流 单消费组限流200 QPS。
说明 为避免大量消息堆积,请确保消费客户端在线,并对平台推送的消息及时ACK回复。
单个产品可关联的消费组数量 最多10个。
单个消费组可关联的产品数量 最多1,000个。
消费组个数限制 单账号最多创建1,000个消费组。
消费端个数限制 单消费组最多支持64个消费端。
连接次数限制 单消费组1分钟内,消费端请求连接不超过100次。
说明 消费端是指接收物联网平台消息的AMQP客户端,而不是设备端。

MNS订阅使用限制

MNS服务端订阅使用限制,请参见MNS使用限制中,队列相关限制说明。

说明
  • 创建MNS服务端订阅后,无论是否有消息从物联网平台流转到队列中,MNS都会收取队列资源占用费。
  • MNS队列接收的单条消息不能超过64 KB,否则消息会被丢弃。