选择 MQTT 代理 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

选择 MQTT 代理

Amazon IoT Greengrass 提供选项供您选择在核心设备上运行哪个本地 MQTT 代理。客户端设备连接到在核心设备上运行的 MQTT 代理,因此请选择与您要连接的客户端设备兼容的 MQTT 代理。

注意

我们建议您仅部署一个 MQTT 代理组件。MQTT 网桥IP 检测器组件每次只能使用一个 MQTT 代理组件。如果您部署多个 MQTT 代理组件,您必须将这些组件配置为使用不同的端口。

您可从以下 MQTT 代理中进行选择:

  • MQTT 3.1.1 代理(Moquette)aws.greengrass.clientdevices.mqtt.Moquette

    对于符合 MQTT 3.1.1 标准的轻量级 MQTT 代理,请选择此选项。 Amazon IoT Core MQTT 代理 Amazon IoT Device SDK 也符合 MQTT 3.1.1 标准,因此您可以使用这些功能来创建在您的设备上使用 MQTT 3.1.1 的应用程序。 Amazon Web Services 云

  • MQTT 5 代理(EMQX)aws.greengrass.clientdevices.mqtt.EMQX

    选择此选项可在核心设备与客户端设备通信时使用 MQTT 5 功能。该组件使用的资源比 Moquette MQTT 3.1.1 代理要多,并且在 Linux 核心设备上,它需要 Docker。

    MQTT 5 与 MQTT 3.1.1 向后兼容,因此您可以将使用 MQTT 3.1.1 的客户端设备连接到该代理。如果您运行 Moquette MQTT 3.1.1 代理,您可以将其替换为 EMQX MQTT 5 代理,并且客户端设备可以继续照常连接和运行。

  • 实施自定义代理

    选择此选项可创建自定义本地代理组件以与客户端设备通信。您可以创建使用 MQTT 之外的协议的自定义本地代理。 Amazon IoT Greengrass 提供组件 SDK,用于对客户端设备进行身份验证和授权。有关更多信息,请参阅使用 Amazon IoT Device SDK 与 Greengrass 原子核、其他组件进行通信 Amazon IoT Core对客户端设备进行身份验证和授权