选择一个 MQTT 经纪商 - AWS IoT Greengrass

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

选择一个 MQTT 经纪商

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

注意

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

您可以从以下 MQTT 经纪商中进行选择:

  • MQTT 3.1.1 经纪商(Mo quette)— aws.greengrass.clientdevices.mqtt.Moquette

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

  • 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 以外的协议的自定义本地代理。 AWS IoT Greengrass提供了一个组件 SDK,可用于对客户端设备进行身份验证和授权。有关更多信息,请参阅 使用AWS IoT Device SDK与 Greengrass 原子核、其他组件进行通信 AWS IoT Core对客户端设备进行身份验证和授权