0

我需要将大约 1000 MB 的巨大数据字节从模块 A 发送到 Azure IoT Edge 中的模块 B。(模块 A 和模块 B 位于同一边缘设备中)消息路由最多允许 262143 字节,直接方法允许大约 160 KB。是否有任何其他选项可以在模块之间发送大量数据字节,性能是主要问题,我不想拆分数据并将其作为块发送。

谢谢

4

3 回答 3

1

边缘路由不是模块通信的唯一方式。毕竟这些是 docker 容器,没有什么能阻止您在其中两个之间实现自己的 TCP 链接。由于 docker 提供了一个带有 DNS 服务器的虚拟网络,因此您还可以避免容器 IP 地址的任何变化。您可以按名称查找容器的地址,默认情况下,容器将使用 docker 的 DNS 服务来执行此操作,因此您将能够将其解析为 IP 地址。除 edgeAgent 之外的所有 Azure IoT Edge 模块都在名为 azure-iot-edge 的 docker 网络上运行。您需要实现代码来移动数据。您可以从头开始执行此操作,或者您可以使用预定义的协议,例如 ftp 或 scp。您还需要考虑到,除非您采取措施保护此转移,

我并不是说这会给你最好的表现。我只是为您提供其他研究途径。

于 2020-06-01T21:02:47.483 回答
0

这些数据是做什么用的?我能想到的另一个选择是使用 docker 卷共享数据,https: //docs.docker.com/storage/volumes/或绑定挂载,https://docs.docker.com/storage/bind-mounts/

于 2020-06-01T17:52:56.527 回答
0

拥有一个共享文件夹会有所帮助(https://docs.microsoft.com/en-us/azure/iot-edge/how-to-access-host-storage-from-module#link-module-storage-to-device- storage ) 并使用了 google 协议缓冲区,这有助于将我们的文件减少 1/3 1000MB 文件减少到 300MB。

于 2020-06-05T17:07:16.590 回答