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

AMQP订阅使用限制

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

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

  • 消费客户端重新上线并恢复稳定消费能力后,物联网平台重试推送堆积消息。
  • 如果客户端对重试推送的消息消费失败,可能导致堆积队列阻塞。按大约一分钟间隔,物联网平台向客户端再次重试推送。
消息保存条数 一个消费组最多可堆积1亿条消息。
消息保存时长1天。
实时消息推送限流一个连接限流1,000 TPS。您可通过增加连接数扩容,连接数最大为64个。
堆积消息推送限流一个消费组限流200 TPS。
说明 为避免大量消息堆积,请确保消费客户端在线,并对平台推送的消息及时ACK回复。
一个产品可关联的消费组数量最多10个。
一个消费组可关联的产品数量最多1,000个。
一个消费组可订阅的Topic数量最多200个。
说明 订阅一个使用通配符的Topic,计为一个Topic。例如订阅产品下的Topic:/asde****/+/user/get,无论产品下有多少设备,都计为一个Topic。
消费组个数限制一个阿里云账号最多创建1,000个消费组。
消费端个数限制一个消费组最多支持64个消费端。
连接次数限制一个消费组1分钟内,消费端请求连接不超过100次。
说明 消费端是指接收物联网平台消息的AMQP客户端,而不是设备端。

MNS订阅使用限制

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

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