我是靠谱客的博主 害羞哈密瓜,最近开发中收集的这篇文章主要介绍阿里云-设备影子概览设备影子概览,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

设备影子概览

更新时间:2020-04-28 11:15:58

编辑我的收藏

本页目录

  • 应用场景
  • 查看与更新设备影子
  • 相关API

物联网平台提供设备影子功能,用于缓存设备状态。设备在线时,可以直接获取云端指令;设备离线后,再次上线可以主动拉取云端指令。

设备影子是一个 JSON 文档,用于存储设备上报状态、应用程序期望状态信息。

每个设备有且只有一个设备影子,设备可以通过MQTT获取和设置设备影子来同步状态,该同步可以是影子同步给设备,也可以是设备同步给影子。

应用场景

  • 场景1:网络不稳定,设备频繁上下线。

    由于网络不稳定,设备频繁上下线。应用程序发出需要获取当前的设备状态请求时,设备掉线,无法获取设备状态,但下一秒设备又连接成功,应用程序无法正确发起请求。

    使用设备影子机制存储设备最新状态,一旦设备状态产生变化,设备会将状态同步到设备影子。应用程序在请求设备当前状态时,只需要获取影子中的状态即可,不需要关心设备是否在线。

  • 场景2:多程序同时请求获取设备状态。

    如果设备网络稳定,很多应用程序请求获取设备状态,设备需要根据请求响应多次,即使响应的结果是一样的,设备本身处理能力有限,无法负载被请求多次的情况。

    使用设备影子机制,设备只需要主动同步状态给设备影子一次,多个应用程序请求设备影子获取设备状态,即可获取设备最新状态,做到应用程序和设备的解耦。

  • 场景3:设备掉线。
    • 设备网络不稳定,导致设备频繁上下线,应用程序发送控制指令给设备时,设备掉线,指令无法下达到设备。
      • 通过QoS=1或者2实现,但是该方法对于服务端的压力比较大,一般不建议使用。
      • 使用设备影子机制,应用程序发送控制指令,指令携带时间戳保存在设备影子中。当设备掉线重连时,获取指令并根据时间戳确定是否执行。
    • 设备真实掉线,指令发送失败。设备再上线时,设备影子功能通过指令加时间戳的模式,保证设备不会执行过期指令。

查看与更新设备影子

您可以在控制台,查看设备影子信息,更新设备影子状态。

操作步骤:

  1. 登录物联网平台控制台。
  2. 单击设备管理 > 设备。
  3. 单击对应设备的查看按钮,进入设备详情页。
  4. 单击设备影子。

    页面显示设备上报的影子状态。

    设备影子
  5. 单击更新影子,在“desired”部分,填入期望设备状态。

    设备影子文档格式,请参见设备影子JSON详解。

    设备在线时,设备影子保存期望状态,设备通过订阅Topic直接获得期望状态。

    设备离线时,设备影子缓存期望状态,设备上线后,主动从云端拉取最新期望状态。

相关API

获取设备影子:GetDeviceShadow

更新设备影子:UpdateDeviceShadow

最后

以上就是害羞哈密瓜为你收集整理的阿里云-设备影子概览设备影子概览的全部内容,希望文章能够帮你解决阿里云-设备影子概览设备影子概览所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部