使用物联网平台时,您会受到以下功能和服务性能限制。

产品与设备

限制项 描述 限制
标签个数 单个产品、设备或分组最多可以添加的标签数。 100
产品数量 单账号最多可以创建的产品数。 1,000
设备数量 单产品最多可以添加的设备数。
说明
  • 为了及时了解产品下的设备数情况,避免影响新设备接入,建议您配置产品下已创建设备数阈值报警,具体操作请参见创建阈值报警规则
  • 如果设备数量超过此限制,请新建产品。
1,000,000
单账号最多可以添加的设备数。
说明 若该限制数量不能满足您的业务需求,请提交工单说明您的需求。
10,000,000
网关与子设备 单个网关下最多添加的子设备数。 1,500
物模型功能定义 单个产品最多可添加的功能总数。 300
单个产品可添加属性最多256个,添加事件最多256个,添加服务最多256个。 256
struct类的属性最多可添加的参数个数。 50
当功能的数据类型为enum时,枚举项最多不超过100个。 100
当功能的数据类型为text时,数据长度不超过2,048字符。 2,048字符
当功能的数据类型为array时,数组内的元素不超过128个。 128
服务中可添加的入参和出参分别不超过20个。 20
事件中可添加的出参不超过50个。 50
单个物模型最多保存最近的10个版本。 10
导入物模型时,文件大小不超过256 KB。 256 KB
设备分组 一个阿里云账号下最多可有1,000个分组,包括父分组和子分组。 1,000
单个分组内最多添加20,000个设备。 20,000
一个设备最多可以被添加到10个分组中。 10
数据解析 数据解析脚本文件大小不能超过128 KB。 128 KB
远程配置 远程配置文件,仅支持JSON格式,大小不能超过64 KB。 64 KB
数据存储时间 产品运行时,产生的属性、事件、服务数据存储时间为30天。超出30天的数据不再保存。

若您有更长时间的数据存储或分析需要,可以使用数据分析服务

30天
文件管理 一个阿里云账号可存储在物联网平台服务器的文件总大小的上限。 1 GB
单个设备最多可存储的文件数量。 1,000
固件升级 一个阿里云账号下最多可包含的固件数量。 500
单个固件文件大小限制。 1,000 MB

连接通信

限制项 描述 限制
设备接入限制 使用同一个设备证书信息(相同的Productkey、DeviceName)。在同一时间,只能和物联网平台服务器建立一个连接。 1
连接次数 单账号每秒最大MQTT连接请求数。 500
单设备每分钟最大连接请求次数。 5
设备订阅数 单设备的最大订阅数。

超过订阅数的请求将会被直接拒绝。设备端可以通过验证SUBACK消息,确认请求是否成功。

100
请求数量 单账号每秒由设备端向物联网平台发送的请求数。 10,000
单账号每秒由物联网平台向设备端发送的请求数。 2,000
服务端订阅限流 AMQP服务端订阅,单消费组每秒可接收的最大消息数。 1,000
消息通信限流 单设备每秒最多可上报的消息数量。
说明 MQTT的Pub上报消息限流,协议上没有任何应答。您可以通过日志服务发现设备被限流的警告。
  • QoS 0:30条/秒
  • QoS 1:10条/秒
单设备接收下行消息的最大限制为50条/秒,同时受限于网络环境。

如果网络tcp write buffer拥堵,将直接返回错误。通过Pub接口发指令给设备,如果设备不能及时处理,将收到限流错误。

50条/秒
带宽 单个连接每秒的吞吐量(带宽)最大限制。 1,024 KB
缓存请求数 物联网平台限制了单客户端的最大未确认入站发布请求数。

达到此限制后,除非返回PUBACK消息,否则服务器不会再接收新的客户端发布请求。

100
消息存储时长 QoS1消息的最大存储时间。

如果最大时间后,未从客户端接收到PUBACK消息,则会丢弃这些发布请求。

7天
MQTT消息长度 MQTT单个发布消息最大长度。超过此大小的发布请求将被直接拒绝。 256 KB
CoAP消息长度 CoAP单个发布消息最大长度。超过此大小的发布请求将被直接拒绝。 1 KB
MQTT保活 MQTT连接心跳时间为30秒至1,200秒。心跳时间不在此区间内,服务器将会拒绝连接。

建议取值300秒以上。

从物联网平台发送CONNACK响应CONNECT消息时,开始心跳计时。收到PUBLISH、SUBSCRIBE、PING或 PUBACK消息时,会重置计时器。超过指定1.5倍心跳时间未收到消息(指定心跳时间乘以1.5),服务器将自动断开连接。

30秒~1,200秒
RRPC超时时间 设备响应RRPC请求的超时时间。 8秒

Topic相关

限制项 描述 限制
自定义Topic类数量 一个产品最多可以定义50个Topic类。 50
权限 设备只能对自己的Topic进行消息发布与订阅。 -
Topic长度 Topic长度不能超过128字节,UTF-8编码字符。 128字节
Topic类目 一个Topic中最多可包含多少个层级类目,即Topic中斜杠的最大数量。 7
订阅数 每个订阅请求的最大订阅数。 8
操作生效时间 订阅和取消订阅都是操作10秒后生效,一次订阅永久生效。建议您提前订阅Topic以免漏失信息。

示例:设备向Topic A发送SUB请求,10秒后,订阅生效,设备开始收到实时消息,除非取消订阅,设备将一直接收Topic A的消息。

10秒
广播Topic 要广播的消息主体报文大小不能超过64 KB。

需要将消息原文转换成二进制数据,并进行Base64编码,从而生成消息主体。

64 KB
服务端SDK每分钟只可发一条全量广播消息。 1条/分钟

设备影子

限制项 描述 限制
JSON层级 设备影子JSON文档的最大层级深度。 5
文件大小 设备影子JSON文档的最大限制。 16 KB
属性数量 设备影子JSON文档的属性数量限制。 128
每秒请求数 每个设备每秒的最大请求数。 20

云产品流转

限制项 描述 限制
规则数量 单账号最多可以设置1,000条规则。 1,000
流转目标数量 一条规则中转发数据的操作不能超过10个。 10
规则引擎处理消息量 云产品流转为单个阿里云账号提供1,000 QPS的数据处理能力。子账号共享主账号配额。

一条消息处理后可以写入多个云产品,写入云产品限制请参见下一条:写入云产品消息量。

对于被限流的消息,系统将自动重试处理,多次重试失败的数据会被丢弃。

1,000 QPS
写入云产品消息量

在目标云产品实例性能足够的情况下,云产品流转为单个阿里云账号提供2,000 QPS的数据转发能力。子账号共享主账号配额。

如果请求量超出该限制,或目标云产品写入耗时过高导致同一时刻写入请求量超出40个,数据转发会被限流。

由于目的云产品出现异常情况导致转发失败,物联网平台会间隔1秒、3秒、10秒进行3次重试。3次重试均失败后,消息会被丢弃,同时会向您指定的转发错误数据的目标云产品发送一条错误记录。

2,000 QPS
流转目标要求 数据转发依赖目标云产品,需确保目标云产品实例正常。目标云产品的实例宕机、欠费、参数错误(如授权变更、值非法)、配置错误等异常状况将会导致消息流转失败。 -
消息去重 数据流转不保证消息只到达一次。在分布式环境下,某些rebalance短暂不一致,可能导致一条消息发送多次的情况。多次发送的消息ID相同,应用方收到消息后,需要根据消息ID去重。 -

服务端订阅

AMQP服务端订阅使用限制:

限制项 描述
认证超时 连接建立之后,需要立刻发送认证请求。如果15秒内没有认证成功,服务器将主动关闭连接。
数据超时 服务端与物联网平台建立连接时,需传入心跳时间(AMQP协议参数idle-timeout),取值范围为30~300秒。

连接建立之后,用户服务端需在心跳时间内发送PING包来维持连接。若没有在心跳时间内发送PING包,物联网平台将断开连接。

失败推送重试策略 因消费客户端离线、消息消费慢等原因导致的堆积消息会重试推送。 重试推送的时间间隔为1分钟。
消息保存条数 单消费组最多可堆积1亿条消息。
消息保存时长 1天。
实时消息推送限流 单消费组限流1000 QPS。
离线消息推送限流 单消费组限流200 QPS。
单个产品可关联的消费组数量 最多10个。
单个消费组可关联的产品数量 最多200个。
消费组个数限制 单账号最多创建1000个消费组。
消费端个数限制 单消费组最多支持64个消费端。
连接次数限制 单消费组1分钟内,消费端请求连接不超过100次。

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

云端API限制

调用云端API的每秒请求数(QPS)限制,请参见具体API文档

若您调用接口收到限流报错,如公共错误中29~31类型报错,可以重新尝试调用。