你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
IoT 中心和卓越运营
Azure IoT 中心 是云中托管的托管服务,充当中心消息中心,用于 IoT 应用程序与其附加设备之间的通信。 你可以可靠地安全地连接数百万台设备及其后端解决方案。 几乎任何设备都可以连接到 IoT 中心。
IoT 中心支持监视,以帮助跟踪设备创建、设备连接和设备故障。
IoT 中心还支持以下消息传送模式:
- 设备到云的遥测
- 从设备上传文件
- 请求-回复方法以从云端控制您的设备
有关 IoT 中心的详细信息,请参阅 IoT 概念和 Azure IoT 中心。
若要了解 IoT 中心如何提升卓越运营,请参阅以下主题:
以下部分特定于 Azure IoT 中心和卓越运营:
- 设计注意事项
- 配置检查清单
- 建议的配置选项
设计注意事项
有关 Azure IoT 中心服务水平协议的更多信息,请参阅Azure IoT 中心 SLA。
清单
您在配置 Azure IoT 中心时是否考虑了卓越运营?
- 在另一个区域中预配第二个 IoT 中心,并在设备上具有路由逻辑。
- 频繁发送事件时,请使用
AMQP
或MQTT
协议。 - 如果对设备连接使用 X.509 证书,则仅在生产环境中使用根 CA 验证的证书。
- 为了获得最大吞吐量,当创建 IoT 中心并计划使用内置终结点时,请使用最大分区数(
32
)。 - 为了实现缩放,请增加分层和 IoT 中心单元,而不是在每个区域中添加多个 IoT 中心。
- 在高吞吐量方案中,使用批处理事件。
- 如果需要尽可能低的延迟,请不要使用路由并从内置终结点读取事件。
- 作为解决方案范围的可用性和灾难恢复策略的一部分,请考虑使用 IoT 中心 跨区域灾难恢复选项。
- 使用 SDK 将事件发送到 IoT 中心时,请确保正确捕获重试策略(
EventHubsException
或OperationCancelledException
)引发的异常。 - 若要避免由于限制和完全使用的配额而导致遥测中断,请考虑添加自定义自动缩放解决方案。
配置建议
在配置 Azure IoT 中心时,请考虑以下有关提高运营卓越性的建议:
建议 | 描述 |
---|---|
在另一个区域中预配第二个 IoT 中心,并在设备上具有路由逻辑。 | 使用助手服务可以进一步增强这些配置。 |
频繁发送事件时,请使用 AMQP 或 MQTT 协议。 |
初始化会话时,AMQP 和 MQTT 具有更高的网络成本,同时,HTTPS 每个请求都需要额外的 TLS 开销。 对于频繁发布,AMQP 和 MQTT 的性能更高。 |
如果您在设备连接中使用 X.509 证书,那么在生产环境中仅使用由根 CA 验证的证书。 | 确保在证书过期之前已准备好更新证书的过程。 |
要最大化吞吐量,如果计划使用内置终结点,请在创建 IoT 中心时选用最大分区数(32 )。 |
与事件中心兼容的终结点的设备到云分区数反映了可以实现的下游并行度。 这将允许您将并发处理实体扩展到 32 ,并提供最高的发送和接收可用性。 创建后无法更改此数字。 |
若要扩展规模,请增加层级和 IoT 中心单元的数量,而不是为每个区域添加多个 IoT 中心。 | 每个区域添加多个 IoT 中心不提供额外的复原能力,因为所有中心都可以在同一基础群集上运行。 |
在高吞吐量方案中,使用批处理事件。 | 该服务将向使用者提供具有多个事件的数组,而不是将包含一个事件的数组传送给使用者。 消费应用程序必须处理这些数组。 |
如果需要尽可能低的延迟,请不要使用路由并从内置终结点读取事件。 | 在 IoT 中心使用消息路由时,消息传递的延迟会增加。 平均而言,延迟不应超过 500 ms ,但无法保证传递延迟。 |
作为解决方案范围的可用性和灾难恢复策略的一部分,请考虑使用 IoT 中心 跨区域灾难恢复选项。 | 此选项会将 IoT 中心终结点移动到配对的 Azure 区域。 只有设备注册表会被复制。 事件不会复制到次级区域。 客户发起的故障转移的 RTO 在 10 分钟到几个小时之间。 对于 Microsoft 发起的故障转移,RTO 为 2-26 小时。 确认此 RTO 符合客户的要求,并符合更广泛的可用性策略。 如果需要更高的 RTO,请考虑实现客户端故障转移模式。 |
使用 SDK 将事件发送到 IoT 中心时,请确保正确捕获由重试策略(EventHubsException 或 OperationCancelledException )引发的异常。 |
使用 HTTPS 时,应用正确的重试模式。 |