【问题标题】:How should I link a backend solution to an IoT Hub我应该如何将后端解决方案链接到 IoT 中心
【发布时间】:2019-09-23 10:35:10
【问题描述】:

所以,我正在 Azure 上开发 IoT 解决方案,我们一直在使用合作伙伴解决方案,我们将合作伙伴的设备链接到他的云解决方案,通过 REST 服务向我们公开数据。现在我们希望在 Azure 上拥有自己的物联网云解决方案。

首先,我计划通过其 REST 服务在我们的 IoT 解决方案和合作伙伴的云解决方案之间建立一座桥梁,该服务将链接到我们的 IoT 中心,以便将数据摄取到我们的云中。

此外,数据不仅是遥测数据,我们还必须向这些设备发送命令。

我的问题:我想知道使用网关(数据网格、Azure 函数、Azure WebJob)的合适技术/解决方案是什么

图片中的数字代表我正在考虑解决这个问题的步骤。

1- 首先,我们要实现一个应用程序网关,该网关必须从合作伙伴的系统中获取数据并向他们的系统发送命令。它将允许我们首先构建系统的其他组件,并确保它能够处理当前的内容。

2- 其次,合作伙伴的设备将直接连接到连接到我们的 IoT 中心的设备网关。在这种情况下,我们将不再使用 1 中的网关。

3- 最后,我们将自己的设备连接到我们的 IoT Hub,合作伙伴的设备将始终通过 2 中内置的网关连接到我们的 IoT Hub。

【问题讨论】:

  • 我推荐阅读docs.microsoft.com/en-us/azure/iot-edge/iot-edge-as-gateway。本文档在备忘单中描述了对每个网关模式使用 设备孪生 的功能的比较。您对所有设备(1、2 和 3)的业务需求是否仅提取其遥测数据(D2C 消息传递)和异步 C2D 消息传递?

标签: azure azure-functions azure-webjobs azure-iot-hub azure-application-gateway


【解决方案1】:

让我按照您提出的顺序尝试回答您的问题。

  1. 对于应用程序网关,您尝试从中提取数据 REST,您可以使用 Azure 函数,然后使用 Cosmos DB 或任何 存储以保存数据。我明白了,从合作伙伴那里获取设备数据后 网络,您将其路由到 IoT-Hub(我不会说,它的 不正确),但是一旦我们通过 Rest 提取数据,我们就可以直接 放入数据库。所以我的答案是使用 Azure 函数来提取数据 从合作伙伴解决方案中提取并放入数据库。
  2. 如果合作伙伴设备能够运行 Azure IoT sdks 或者可以 配置为直接将数据发送到 IoT 中心,这将减轻很多 事情,您将能够轻松发送 D2C 和 C2D 消息。 此外,您可以在此处使用配置将数据路由到数据库 物联网中心。
  3. 对于您的设备,您可以直接使用 IoT 中心,也可以使用 Azure IoT Edge(您指出的设备网关),两者都很好,取决于 在用例上以及如果我们想做一些边缘计算或 设备端的分析。还有一个重要的建议,使用 Azure 您发现必须集成设备的功能 数据通过休息。在这种情况下最具成本效益。

如果它消除了您的疑虑,请告诉我。

【讨论】:

  • 谢谢拉维的回答。我们已经有一个移动和 Web 应用程序正在使用其余服务从其余服务中提取数据,甚至向这些设备发送命令,是的,数据存储在 MongoDB 中。
  • 我想知道 Azure Function 是否能够同时处理多个 C2D 消息。
  • 是的,Azure 函数是由 MS 可扩展和管理的,因此可扩展性根本不是问题。
【解决方案2】:

经过一段时间的研究,我确实实现了一个 AZURE 函数应用程序,原因如下:

  • 支持持续部署和集成即使 Azure Functions 是无服务器架构,它仍然支持持续部署和持续集成
  • 实现代码的能力 - 由于是事件驱动的,应用平台能够实现由任何第三方服务或本地系统中发生的事件触发的代码。
  • 按需计算:这种交付模式确保计算资源可根据用户的需求提供给用户。

我还使用 Azure 表存储作为数据库存储技术。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2017-06-01
    • 2019-09-03
    • 1970-01-01
    • 2014-01-20
    • 1970-01-01
    相关资源
    最近更新 更多