首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果网关设备失去与谷歌IoT核心的连接,会发生什么?

如果网关设备失去与谷歌IoT核心的连接,会发生什么?
EN

Stack Overflow用户
提问于 2020-04-23 14:31:25
回答 2查看 125关注 0票数 0

根据谷歌IoT文档,网关设备充当存储和处理来自设备的数据的设备。但是在MQTT网关示例中,我找不到网关是如何存储数据的。因此,我想知道如果网关和云之间的连接丢失了一段时间,会不会导致设备的消息丢失?这在实践中是如何处理的?

EN

回答 2

Stack Overflow用户

发布于 2020-05-17 12:57:07

将云IoT网关视为您负责编写(或采购)的应用程序。网关不是谷歌提供的“实现”,而是GCP Cloud IoT的架构组件。它通常用作没有本地Internet网络功能的设备的代理。例如,蓝牙设备不能直接连接到云,但它可以连接到既能说蓝牙又能访问互联网的设备。

假设你有一个设备(D),它无法连接到互联网,但希望发布遥测。它确实具有连接到网关设备(G)的能力,该网关设备(G)可以是计算机或一些更丰富的硬件。D和G是如何沟通的.例如,它可能是蓝牙或串行或USB或其他东西。然后,我们假设G能够从D(或多个设备)接收数据。当G接收到数据时,它将通过到GCP Cloud IoT的MQTT连接执行MQTT发布请求。此publish请求来自G,但将D标识为源。

现在回答你的问题..。如果G不能成功地发送发布,那么这取决于您的本地逻辑(以及您自己的G实现)。您的逻辑可能会将请求本地存储在G中,并在未来重试,它可能会丢弃,也可能会向D报告一个错误,该错误本身可能会在未来重试。所有这些都是有效的可能性。

票数 1
EN

Stack Overflow用户

发布于 2020-05-25 05:26:55

当网关与GCP断开连接时,根据您的实施情况,GCP客户端会断开网关并等待其重新连接。在网关的基本情况下,它不应该保存任何内容,它应该只是充当一个可以代表无法使用MQTT或HTTP连接到云的设备与云对话的设备。

例如,如果您有许多设备具有BLE功能,但没有HTTP/MQTT,则可以使用网关将这些设备的数据发送到云。

对于您的情况,如果您担心在网关未连接时丢失消息,您可以实现某种类型的保存代码,在网关断开连接时将消息存储在JSON文件中,并且当网关重新连接时,它将在新消息之前发送这些消息。这可能不是最好的实现,因为您会遇到大量积压的消息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61380704

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档