使用物联网平台时,您会受到以下功能和服务性能限制。
产品与设备
限制项 | 描述 | 限制 |
---|---|---|
标签个数 | 单个产品、设备或分组最多可以添加的标签数。 | 100 |
产品数量 | 企业版实例:单实例下最多可以创建的产品数。 | 1,000 |
公共实例:单账号下最多可以创建的产品数。 | 1,000 | |
设备数量 | 单产品最多可以添加的设备数。
说明
|
1,000,000 |
单账号最多可以添加的设备数。
说明 若该限制数量不能满足您的业务需求,请提交工单说明您的需求。
|
10,000,000 | |
网关与子设备 | 单个网关下最多添加的子设备数。 | 1,500 |
物模型功能定义 | 单个产品最多可包含物模型模块(默认模块和自定义模块)总数。 | 10 |
单个物模型模块最多可添加的功能总数。 | 300 | |
struct类的属性最多可添加的参数个数。 | 50 | |
当功能的数据类型为enum时,枚举项的最多个数。 | 100 | |
当功能的数据类型为text时,数据最大长度。 | 10,240个字符 | |
当功能的数据类型为array时,数组内的元素最多个数。 | 512 | |
所有服务和事件中最多可添加入参和出参的总数。 | 300 | |
单个服务中最多可添加的入参个数。 | 100 | |
单个服务中最多可添加的出参个数。 | 100 | |
单个事件中最多可添加的出参个数。 | 100 | |
最多可同时导入物模型模块文件的总数。 | 10 | |
单个物模型最多保存最近版本的个数。 | 10 | |
导入物模型时,单个JSON格式的物模型模块文件大小的上限。 | 256 KB | |
导入物模型时,多个JSON格式文件压缩的ZIP文件大小的上限。 | 2.5 MB | |
调用物模型相关API时,如果请求参数ThingModelJson中ARRAY和STRUCT类型数据相互嵌套,最多支持递归嵌套的层级数。
例如ARRAY中只能使用STRUCT,此时该STRUCT中不能再有ARRAY或STRUCT类型数据。 |
2级(父和子) | |
设备分组 | 一个阿里云账号下最多可有父分组和子分组的总个数。 | 1,000 |
单个分组内最多可添加设备的个数。 | 100,000 | |
一个设备最多可被添加到的分组个数。 | 10 | |
数据解析 | 数据解析脚本文件大小的上限。 | 128 KB |
远程配置 | 远程配置文件,仅支持JSON格式。文件大小的上限。 | 64 KB |
数据存储时间 | 产品运行时,产生的属性、事件、服务数据存储时间为30天。超出30天的数据不再保存。
若您有更长时间的数据存储或分析需要,可以使用数据分析服务。 |
30天 |
文件管理 | 一个阿里云账号可存储在物联网平台服务器的文件总大小的上限。 | 1 GB |
单个设备最多可存储的文件数量。 | 1,000 | |
OTA升级 | 一个阿里云账号下最多可包含的升级包数量。 | 500 |
单个升级包文件大小限制。 | 1,000 MB | |
单次批量升级最多可升级的设备数量。 | 100,000 | |
设备任务 | 一个阿里云账号下,单个地域最多可添加设备任务个数。 | 10,000 |
连接通信
限制项 | 描述 | 限制 |
---|---|---|
设备接入限制 | 使用同一个设备证书信息(相同的Productkey、DeviceName)。在同一时间,只能和物联网平台服务器建立一个连接。 | 1 |
连接次数 | 单账号每秒最大MQTT连接请求数。 | 500 |
单设备每分钟最大连接请求次数。 | 5 | |
设备订阅数 | 单设备的最大订阅数。
超过订阅数的请求将会被直接拒绝。设备端可以通过验证SUBACK消息,确认请求是否成功。 |
100 |
请求数量 | 单账号每秒由设备端向物联网平台发送的请求数。 | 10,000 |
单账号每秒由物联网平台向设备端发送的请求数。 | 2,000 | |
服务端订阅限流 | AMQP服务端订阅,单消费组每秒可接收的最大消息数。 | 1,000 |
消息通信限流 | 单设备每秒最多可上报的消息数量。
说明 MQTT的Pub上报消息限流,协议上没有任何应答。您可以通过日志服务发现设备被限流的警告。
|
|
单设备接收下行消息的最大限制为50条/秒,同时受限于网络环境。
如果网络tcp write buffer拥堵,将直接返回错误。通过Pub接口发指令给设备,如果设备不能及时处理,将收到限流错误。 |
50条/秒 | |
带宽 | 单个连接每秒的吞吐量(带宽)最大限制。 | 8Mbps |
缓存请求数 | 物联网平台限制了单客户端的最大未确认入站发布请求数。
达到此限制后,除非返回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秒 |
MQTT 5.0协议 | 最多可添加用户自定义属性的总个数。 | 20 |
单个用户自定义属性的Key和Value最大总长度。 | 128个字符 | |
请求和响应模式中,响应主题(Response Topic)和相关数据(Correlation Data)长度的上限相同。 | 128个字符 |
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个,数据转发会被限流。 转发到RocketMQ、RDS、TSDB等类型的云产品时,若云产品资源变化导致目的云产品无法访问,系统将停止执行转发,并显示规则异常信息;其他异常情况,系统将间隔1秒、3秒、10秒进行3次重试,3次重试均失败后,消息会被丢弃,同时会向您指定的转发错误数据的目标云产品发送一条错误记录。 |
2,000 QPS |
流转目标要求 | 数据转发依赖目标云产品,需确保目标云产品实例正常。目标云产品的实例宕机、欠费、参数错误(如授权变更、值非法)、配置错误等异常状况将会导致消息流转失败。 | 无 |
消息去重 | 数据流转时,为确保消息送达,同一条消息可能重复发送,直到客户端返回ACK或消息过期。同一条消息的消息ID相同,您可根据消息ID去重。 | 无 |
服务端订阅
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使用限制中,队列相关使用限制。
云端API限制
调用云端API的每秒请求数(QPS)限制,请参见具体API文档。
若您调用接口收到限流报错,如公共错误中29~31类型报错,可以重新尝试调用。
在文档使用中是否遇到以下问题
更多建议
匿名提交