http://docs.aws.amazon.com/zh_cn/general/latest/gr/aws_service_limits.html
AWS IoT 限制
物联网对象限制
资源 | 限制 |
---|---|
事物名称大小 | 128 字节(UTF-8 编码的字符)。此限制适用于 Thing Registry 和 Thing Shadow 服务。 |
具有物联网对象类型的物联网对象的物联网对象属性的最大数量 | 50 |
没有物联网对象类型的物联网对象的物联网对象属性的最大数量 | 3 |
与某个物联网对象关联的物联网对象类型数 | 1 |
AWS 账户中的物联网对象类型的最大数量 | 无限 |
消息代理限制
客户端 ID 大小 | 128 字节(UTF-8 编码的字符)。 |
连接不活动 (保持连接间隔) | 默认情况下,MQTT 客户端连接在 30 分钟不活动之后会断开连接。当客户端发送 PUBLISH、SUBSCRIBE、PING 或 PUBACK 消息时,会重置不活动计时器。 通过在发送给服务器的 MQTT CONNECT 消息中指定一个 5-1200 秒之间的值,客户端可以请求更短的保持连接间隔。在指定了保持连接值的情况下,如果在请求的间隔的 1.5 倍时间内没有收到 PUBLISH、SUBSCRIBE、PINGREQ 或 PUBACK 消息,则服务器会断开客户端的连接。在发送者发出 CONNACK 后,保持连接计时器即会启动。 如果客户端发送的保持连接值为零,则默认保持连接行为维持不变。 如果客户端请求的保持连接值少于 5 秒,则服务器会视为客户端请求的是 5 秒保持连接间隔。 在服务器向客户端返回 CONNACK 后,保持连接计时器立即开始计时。在客户端发送 CONNECT 消息和开始保持连接行为之间,可能有短时延迟。 |
每账户每秒的连接请求数 | AWS IoT 将账户每秒的最大 MQTT CONNECT 请求数限定为 300。 |
主题和主题筛选条件中斜杠的最大数量 | 发布消息时提供的主题或者订阅时提供的主题筛选条件不能超过 7 个正斜杠 (/)。 |
最大入站未确认消息数 | 消息代理允许每个客户端拥有 100 条正在处理的未确认消息。(此限制适用于所有需要 ACK 的消息。)达到此限制后,除非服务器返回 ACK,否则不会从此客户端接受新消息。 |
最大出站未确认消息数 | 消息代理仅允许每个客户端拥有 100 条正在处理的未确认消息。(此限制适用于所有需要 ACK 的消息。)达到此限制后,除非客户端确认正在处理的消息,否则不会向客户端发送任何新消息。 |
QoS 1 消息的最大重试提交间隔 | 如果已连接的客户端一小时都无法收到 QoS 1 消息的 ACK 信号,则消息代理会丢弃该消息。如果客户端有 100 个正在传输的消息、由于负载过大受到限制或者发生了其他错误,则无法接收消息。 |
每个订阅调用的最大订阅数 | 单个 SUBSCRIBE 调用最多请求 8 个订阅。 |
消息大小 | 每个 PUBLISH 消息的负载限制为 128 KB。AWS IoT 服务会拒绝超过此大小的消息。 |
每账户每秒的发布请求数 | 每账户每秒 9000 个 (入站发布数 - 最多每秒 3000 个,出站发布数 - 最多每秒 6000 个) 在将消息路由到订阅的客户端或规则引擎之前,消息代理处理的所有消息的入站发布计数。例如,在 生成匹配客户端订阅或规则引擎订阅的每条消息的出站发布计数。例如,将两个客户端订阅到主题筛选条件 注意 入站发布和出站发布不能相互交换,例如,如果仅使用每秒 1000 个入站发布,则每秒最大出站发布数保持为 6000。 |
受限制的客户端 ID 前缀 | “$”是为内部生成的客户端 ID 保留的。 |
受限制的主题前缀 | 以“$”开始的主题被视为是保留的,除非用于 Thing Shadows 服务,否则不适用于发布和订阅。 |
每账户每秒的订阅数 | AWS IoT 将账户每秒的最大订阅数限制为 500。例如,如果 1 秒内调用 MQTT SUBSCRIBE 两次,并且每次调用包含 3 个订阅 (主题筛选条件),则 AWS IoT 会针对此限制将其计为 6 个订阅。 |
每个会话的订阅数 | 消息代理限制每个客户端会话最多订阅 50 个订阅。如果 SUBSCRIBE 请求推送的总订阅数超过 50,则会导致连接断开。 |
每个连接的吞吐量 | AWS IoT 对每个客户端连接的入口和出口速率的限制为 512 KB/秒。若以更高速率发送或接收数据,也会限制为此吞吐量。 |
主题大小 | 发布消息时,传递给消息代理的主题不能超过 256 字节(UTF-8 编码的字符)。 |
WebSocket 连接持续时间 | WebSocket 连接时间限于 24 小时。如果客户端或服务器在超过此限制后尝试发送消息,则 WebSocket 连接会自动关闭。要将 WebSocket 连接保持活动状态的时间长于 24 分钟,请在超过时间限制前关闭并重新打开来自客户端的 WebSocket 连接。 AWS IoT 支持 MQTT CONNECT 消息中指定的活动状态保持时间值。客户端在指定活动状态保持时间值后,将通知服务器断开与客户端的连接,如果服务器在长度为活动状态保持时间 1.5 倍的时间段内未收到消息(PUBLISH、SUBSCRIBE、PUBACK、PINGREQ),客户端还会通知服务器传输与 MQTT 会话相关联的任何最新消息。AWS IoT 支持介于 5 秒和 20 分钟之间的活动状态保持时间值。如果客户端请求不保持活动状态 (即,将 MQTT CONNECT 消息中的字段设置为 0),服务器会将活动状态保持时间值设置为 20 分钟,这与 AWS IoT 支持的最长空闲时间 (30 分钟) 相对应。如果活动状态保持时间到期,且该客户端没有传输任何其他消息,大多数 MQTT 客户端(包括 AWS SDK 客户端)都会通过发送 PINGREQ 消息来支持活动状态保持时间值。 |
Device Shadow 限制
JSON 设备状态文档的最大深度 | JSON 设备状态文档的 desired 或 reported 部分的最大级数为 5。例如:
|
正在传输的未确认消息的最大数量 | Thing Shadows 服务最多支持 10 个正在传输的未确认消息。达到此限制后,所有新的影子请求都将被拒绝,并返回错误代码 429。 |
每个 AWS 账户的最大 JSON 对象数 | 每个 AWS 账户的 JSON 对象数没有限制。 |
JSON 状态文档的最大大小 | 8 KB. |
事物名称的最大大小 | 128 字节(UTF-8 编码的字符)。 |
影子生命周期 | 事物影子将在删除创建账户的最多 6 个月后或根据客户请求由 AWS IoT 删除。出于操作目的,AWS IoT 服务备份将保留 6 个月 |
安全和身份限制
每个区域每个 AWS 账户允许的带相同主题字段的 CA 证书的最大数目 | 10 |
可以附加到证书或 Amazon Cognito 身份的策略的最大数量 | 10 |
命名策略版本的最大数量 | 5 |
策略文档的最大大小 | 2048 个字符 (不包括空格) |
每秒可注册的设备证书的最大数量 | 15 |
限制
API | 每秒事务数 |
---|---|
AcceptCertificateTransfer | 10 |
AttachPrincipalPolicy | 15 |
AttachThingPrincipal | 15 |
CancelCertificateTransfer | 10 |
CreateCertificateFromCsr | 15 |
CreatePolicy | 10 |
CreatePolicyVersion | 10 |
CreateThing | 15 |
CreateThingType | 15 |
DeleteCertificate | 10 |
DeleteCACertificate | 10 |
DeletePolicy | 10 |
DeletePolicyVersion | 10 |
DeleteThing | 15 |
DeleteThingType | 15 |
DeprecateThingType | 15 |
DescribeCertificate | 10 |
DescribeCACertificate | 10 |
DescribeThing | 10 |
DescribeThingType | 10 |
DetachThingPrincipal | 15 |
DetachPrincipalPolicy | 15 |
DeleteRegistrationCode | 10 |
GetPolicy | 10 |
GetPolicyVersion | 15 |
GetRegistrationCode | 10 |
ListCACertificates | 10 |
ListCertificates | 10 |
ListCertificatesByCA | 10 |
ListOutgoingCertificates | 10 |
ListPolicies | 10 |
ListPolicyPrincipals | 10 |
ListPolicyVersions | 10 |
ListPrincipalPolicies | 15 |
ListPrincipalThings | 10 |
ListThings | 10 |
ListThingPrincipals | 10 |
ListThingTypes | 10 |
RegisterCertificate | 10 |
RegisterCACertificate | 10 |
RejectCertificateTransfer | 10 |
SetDefaultPolicyVersion | 10 |
TransferCertificate | 10 |
UpdateCertificate | 10 |
UpdateCACertificate | 10 |
UpdateThing | 10 |
AWS IoT Rules Engine 限制
每个 AWS 账户的规则的最大数量 | 1000 |
每个规则的操作数量 | 每个规则最多可定义 10 项操作。 |
规则大小 | 最多 256 KB(UTF-8 编码的字符,包括空格)。 |