gpt4 book ai didi

docker - AWS Step 函数、映射状态和批量输入/输出

转载 作者:行者123 更新时间:2023-12-04 17:23:31 25 4
gpt4 key购买 nike

假设我有一个带 map 状态的阶跃函数。 Map State 是一个批处理作业,与 Docker 容器相关联。我想将输入参数传递给容器,并接收其他 SF 状态的输出。

我相信它可能是一个 Lambda 函数,将输入作为数组进行迭代,并将每个元素作为设置为容器的环境变量传递。但是使用 foreach + 环境变量的 lambda 会是什么样子呢?如何捕获 Docker 容器输出(我相信它可能是 S3 文件/目录)?

还有什么可以替代 Lambda 函数吗?

最佳答案

处理迭代器:

如果你有一个预定义的输入数组,你想用 map 状态迭代,那么你可以把它作为 map InputPath 和 ItemsPath 传递,但在某些情况下你可能需要设置一个 lambda,它会去和为您创建该列表。

您的 ItemsPath 可能类似于:

 "list": [
{
"input": "<my_cool_input parameters>"
},
{
"input": "<my_cool_input parameters>"
}...
]

处理输出:

据我所知,目前还没有办法将批处理计算的输出直接返回到状态机。因此,您需要采用间接方法。

一种方法是将 docker 容器的输出写入某个临时位置,例如 dynamodb 或 s3。然后你需要在你的 step 函数中有一个步骤来读取 dynamodb 的输出(你可以直接这样做,不需要 lambda,如果你写入 s3 那么你将需要一个 lambda 来读取输出)。

似乎也需要这种方法来捕获 docker 容器引发的异常 - 如果有人有更好的方法,我会洗耳恭听。

关于docker - AWS Step 函数、映射状态和批量输入/输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64877638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com