测试按需 Lambda 函数测试 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon IoT Greengrass Version 12023 年 6 月 30 日进入延长寿命阶段。有关更多信息,请参阅Amazon IoT Greengrass V1维护政策。在此日期之后,Amazon IoT Greengrass V1不会发布提供功能、增强功能、错误修复或安全补丁的更新。在上运行的设备Amazon IoT Greengrass V1不会受到干扰,将继续运行并连接到云端。我们强烈建议你迁移到Amazon IoT Greengrass Version 2,它补充说重要的新功能支持其他平台

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

测试按需 Lambda 函数测试

网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的按需Lambda 函数在功能上与基于云的函数类似Amazon Lambdafunction. 按需 Lambda 函数的多次调用可以parallel 运行。Lambda 函数调用创建单独的容器以处理调用,或者在资源允许时重复使用现有的容器。在创建容器时,不会保留在函数处理程序外部定义的任何变量或预处理。

  1. 在组配置页面上,选择Lambda 函数选项卡。

  2. UNDER我的 Lambda 函数,选择Greengrass_HelloWorld_CounterLambda 函数时。

  3. 在存储库的Greengrass_HelloWorld_Counter详细信息页面,选择编辑.

  4. 适用于Pinned,选择False,然后选择Save(保存).

  5. 在组配置页面上,选择部署.

  6. 在您的部署完成后,返回Amazon IoT控制台主页,然后选择测试.

  7. 配置以下字段:

    • 对于 Subscription topic (订阅主题),输入 hello/world/counter

    • 对于服务质量,选择 0

    • 对于 MQTT payload display (MQTT 负载显示),选择 Display payloads as strings (以字符串形式显示负载)

    
                            “Subscriptions (订阅)”测试页面的屏幕截图。
  8. 选择 Subscribe

    注意

    在您订阅之后,您不应看到任何消息。

  9. 要测试按需生命周期,请通过向 hello/world/counter/trigger 主题发布消息来调用该函数。您可以使用默认消息。

    1. 选择发布快速触发该按钮,每次都在五秒钟内按下按钮。

      
                                    显示必须快速单击三次的“Publish to topic (发布到主题)”按钮的屏幕截图。

      每次发布都会调用函数处理程序并为每次调用创建一个容器。在您三次触发该函数时,不会为触发递增调用计数,因为每个按需 Lambda 函数都有自己的容器/沙盒。

      
                                    显示“Invocation Count (调用计数)”固定为 1 的屏幕截图。
    2. 等待大约 30 秒,然后选择 Publish to topic (发布到主题)。调用计数应递增到 2。这说明重复使用了从之前调用创建的容器,并且存储了函数处理程序外部的预处理变量。

      
                                    显示“Invocation Count (调用计数)”现在为 2 的屏幕截图。

您现在应该了解了可在上运行的两种类型的 Lambda 函数时,应该了解了可在Amazon IoT Greengrass核心。下一个模块,模块 4,说明了本地 IoT 设备如何在中进行交互Amazon IoT Greengrass组中)。