我有一个应用程序,其中一个初始lambda将生成几个异步lambdas,其中一些lambda可能会产生自己的异步lambdas,依此类推(尽管有一个生成计数器来防止离家出走)。 Lambdas当前都写入DynamoDB表。我想知道最后一个完成的时间,以便启动一些不同的过程。
我一般可以想到几种方式:
我想知道最简单的方法,和/或“最佳”或规范方式,如果有的话。还想避免使用SQS(虽然我还是要尝试使用SWF,只是因为听起来很酷)。
答案 0 :(得分:1)
答案 1 :(得分:1)
您的方案最适合AWS Step Functions,您可以在其中为Lambda步骤定义Parallel state,并在上次执行时触发最后一步,这将启动不同的过程。然而,这将简化状态机,但会为各个州带来额外的成本。
另一种方法是使用DynamoDB Atomic Counters来跟踪每次执行,以便在上次执行后,附加到Stream的Lambda函数可以识别并启动不同的进程。