首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Raspberry Pi 3b+上运行Greengrass Core

在Raspberry Pi 3b+上运行Greengrass Core
EN

Stack Overflow用户
提问于 2021-06-17 02:21:09
回答 1查看 35关注 0票数 0

我有两个greengrass内核,一个在AWS EC2实例上运行,另一个在Raspberry Pi上运行。

在我的项目中,我将视频帧从本地计算机发送到我的RaspberryPi,然后处理这些帧,定位帧中带有二维码的标记,并将标记的坐标发送到Greengrass。然后我从我的笔记本电脑上读取这些坐标。

在第一个场景中,我的greengrass运行在一个EC2实例上(使用之前的实例),为了提高性能,我决定在我的Raspberry Pi上运行另一个greengrass内核,并使用那个。我的想法是,我将从这个过程中删除EC2实例和云组件,从而提高我的性能,而不是拥有一个三角形的笔记本电脑。

问题是我看不到太多/任何性能上的差异。

在这两种情况下,如果我想连接到我的greengrass核心实例,我使用AWS端点作为我的“联系人”点,唯一的区别是,在核心的连接设置中,我在一个场景中使用树莓派的IP地址,在另一个场景中使用EC2实例的IP地址。我这样做是不是错了,还有别的办法吗?

这种沟通在实践中是如何工作的?我的消息是否会到达云中某处的亚马逊网络服务端点,然后被发送到我的greengrass核心设备(Raspberry Pi或EC2)?

EN

回答 1

Stack Overflow用户

发布于 2021-11-25 20:33:47

Greengrass是一个IoT服务,由于它的用途,它使用快速和轻量级的MQTT协议进行通信。其通信模型基于“发布-订阅”模型,中间层为MQTT broker。

您说的对,消息将发送到亚马逊网络服务端点--即亚马逊网络服务IoT核心MQTT代理。当IoT设备(即RPI或EC2)运行Greengrass或实际上任何其他IoT MQTT客户端软件时,当它‘发送’一条消息时-它会将其发布到特定主题的代理。另一方面,还有另一个IoT设备,该设备通过相同的代理订阅该主题。

代理的作用就像一个集线器,设备通过使用主题发布消息并订阅以接收这些消息,因此通信是可能的。

IoT设备需要该代理进行通信,因此您在EC2或RPI上运行Greengrass并不重要,因为两者都必须发布才能订阅IoT broker上的主题。

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

https://stackoverflow.com/questions/68008125

复制
相关文章

相似问题

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