Amazon web services AWS步骤函数:调用特定步骤的不同实例?

Amazon web services AWS步骤函数:调用特定步骤的不同实例?,amazon-web-services,aws-lambda,aws-step-functions,Amazon Web Services,Aws Lambda,Aws Step Functions,我有一份物品清单。此列表的长度未知。我想使用循环对每个项目执行一些相当繁重的处理。我想知道是否可以使用状态机来实现这一点。更具体地说,我可以让机器的一个步骤执行循环,并为每个项目启动下一个步骤的实例吗?如果不是,你有什么建议?我们的目标是让它尽可能的无服务器 另外,我知道我可以使用step函数进行迭代,但是状态机会在几分钟后超时,如果处理是连续进行的,恐怕没有足够的时间来处理所有项目 如果您可以进行并行处理,那么只有Lambda会有所帮助。 此外,AWS Lambda将只执行到5分钟。 所以,记

我有一份物品清单。此列表的长度未知。我想使用循环对每个项目执行一些相当繁重的处理。我想知道是否可以使用状态机来实现这一点。更具体地说,我可以让机器的一个步骤执行循环,并为每个项目启动下一个步骤的实例吗?如果不是,你有什么建议?我们的目标是让它尽可能的无服务器


另外,我知道我可以使用step函数进行迭代,但是状态机会在几分钟后超时,如果处理是连续进行的,恐怕没有足够的时间来处理所有项目

如果您可以进行并行处理,那么只有Lambda会有所帮助。 此外,AWS Lambda将只执行到5分钟。 所以,记住这一点

更多的访问


如果您有其他疑问,请告诉我。

对于serverless,我希望您的意思不是每天或定期手动启动和终止实例

选项1:将项目放入AWS SQS,启动一个实例,该实例将逐个处理该项目,并在所有项目完成后终止。在这里,向SQS添加项目和启动实例可以自动化,这取决于项目列表的来源的触发点

选项2:AWS批处理,如果对您的用例有效,它可以并行处理所有项目


根据触发点的不同,可能需要其他组件,例如,如果您希望像提要一样每6小时从URL获取项目列表,则添加一个cloudwatch计划事件,该事件将触发lambda函数,该函数将下载项目并使用选项1或2。

感谢您的帮助dy10:在选项1中,您是指EC2实例还是问题中所述的Lambda实例?我试图避免使用专用服务器,但是,如果我可以通过编程创建一个EC2实例并在完成后终止它,我想应该可以。我指的是EC2实例,因为lambda的上限为5分钟。如果您的单个项目可以并行处理,并且每个项目单独花费的时间少于5分钟,那么您也可以使用lambda。但请注意,您可以自动启动和关闭ec2实例,因此实际上,您的代码如何运行并不重要。