微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 AWS 步骤函数调用多个 Lambda

如何解决使用 AWS 步骤函数调用多个 Lambda

我有两个 lambda 表达式 L1 和 L2。我正在 L1 中启动状态机。我有 L1 的环境变量,即 E1。基本上 E1 是空间分隔值列表,我需要在 L1 中执行一些哈希函数,对于每个值,我需要使用该值和 Hash(value) 作为输入触发 Lambda L2 的单独实例

例如:E1 - "1 2 3" 和 hash(1) = 堆栈,hash(2) = 结束,hash(3) = 流 应该使用 (i,hash(i)) 作为 L2 的输入/有效负载触发 L2 的三个实例

如何使用阶梯函数实现这一点

解决方法

您可以使用 Map 状态执行此操作。最简单的方法是让第一个函数的输出是第二个函数的输入数组。所以是这样的:

[
  {
    i: 1,iHash: 'hashed 1'
  },{
    i: 2,iHash: 'hashed 2'
  }
  .
  .
  .
]

Map 状态下,您将 iterator 值设置为来自输出的数组。数组中每个元素的值将是 Map 状态内第一个状态的输入。在 Map 状态中,您只需要另一个 Task 状态,即您的第二个 Lambda 函数,并将 $ 传递给 Payload

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。