将数据从云发送到 aws 物联网
Send data from cloud to aws iot thing
我正在尝试以一种可靠的方式将数据从 aws lambda 函数发送到 aws 物联网。这东西基本上是一个位于远程的 raspberry pi。
我看过 aws 物联网主题,但它们对我的用例来说似乎并不可靠。
到目前为止,我发现了以下有关主题的功能
主题:
- 主题是异步的。
- 当所有内容添加到主题时,只有当前正在收听的设备才会收到更新。
- 无需排队。
- 发布商没有送达通知。
在我的用例中,我需要知道是否已交付(否则重试),但如果设备未连接,主题可能会丢失写入。
有没有办法解决这个问题。非常感谢任何帮助。
编辑:
我想做的是发送有关可以从远程服务器与设备交互的用户的数据。
为了克服我的用例的主题限制,我提出了以下解决方案。
第 1 步:Dynamo -> lambda1 -> sqs -> topic1 -> 远程设备
第二步:远程设备(获取数据后)-> topic2(确认)-> lambda2(从 sqs 中删除消息)-> 更新数据库操作
这个解决方案看起来可靠吗?
编辑 2:
基本上我正在尝试将对数据库所做的所有更新发送到 IOT Thing。
根据@dvd86 的回答,
第 1 步:DynamoStream -> lambda1 -> sqs -> Thing shadow desired
第 2 步:shadow 报告已更新 -> lambda2(从 sqs 删除消息) -> 更新 DB 关于操作
不推荐您的解决方案,因为 Aws 物联网已经实现,您将不得不自己实现很多麻烦。
您对此场景的回答是使用 AWS IoT 影子:https://docs.aws.amazon.com/iot/latest/developerguide/using-thing-shadows.html
我正在尝试以一种可靠的方式将数据从 aws lambda 函数发送到 aws 物联网。这东西基本上是一个位于远程的 raspberry pi。
我看过 aws 物联网主题,但它们对我的用例来说似乎并不可靠。
到目前为止,我发现了以下有关主题的功能
主题:
- 主题是异步的。
- 当所有内容添加到主题时,只有当前正在收听的设备才会收到更新。
- 无需排队。
- 发布商没有送达通知。
在我的用例中,我需要知道是否已交付(否则重试),但如果设备未连接,主题可能会丢失写入。
有没有办法解决这个问题。非常感谢任何帮助。
编辑:
我想做的是发送有关可以从远程服务器与设备交互的用户的数据。
为了克服我的用例的主题限制,我提出了以下解决方案。
第 1 步:Dynamo -> lambda1 -> sqs -> topic1 -> 远程设备
第二步:远程设备(获取数据后)-> topic2(确认)-> lambda2(从 sqs 中删除消息)-> 更新数据库操作
这个解决方案看起来可靠吗?
编辑 2:
基本上我正在尝试将对数据库所做的所有更新发送到 IOT Thing。
根据@dvd86 的回答,
第 1 步:DynamoStream -> lambda1 -> sqs -> Thing shadow desired
第 2 步:shadow 报告已更新 -> lambda2(从 sqs 删除消息) -> 更新 DB 关于操作
不推荐您的解决方案,因为 Aws 物联网已经实现,您将不得不自己实现很多麻烦。
您对此场景的回答是使用 AWS IoT 影子:https://docs.aws.amazon.com/iot/latest/developerguide/using-thing-shadows.html