AWS Lambda的应用程序架构

时间:2019-04-12 08:40:59

标签: architecture aws-lambda

这与AWS Lambda实施有关。我正在.netcore中处理一些lambda函数。有14个不同的旅行目的地,它们具有与票价,酒店预订,租金等相关的不同规则和规定。我有一个图书馆,可以处理每个旅行目的地的这些规则。在该库中,我总共有14个针对这些旅行目的地的类处理程序。最后,当某些座席想要预订多个目的地时,他们需要在最后提交它们,以由单独的库处理进一步的流程。 现在,我有14个不同的菜单项,单击它们打开旅行目的地的选择过程。我们正在尝试将该应用程序转换为使用AWS lambda。最初,我们认为每个旅行目的地只有一个lambda;最终将有14个不同的lambda和一个单独的lambda,以便在行程被提交进行进一步处理时进行进一步处理。因此,当任何用户单击任何旅行菜单项,规则和规则时,逻辑将由指定的lambda函数处理。

但是,代理还有另一种功能,可以保存其行程并在将来进行安排。此类行程只能在安排的日期进行处理。假设在一个行程中配置了5个目的地,则指定5 lambda将处理这些目的地以进行规则和调节,然后需要将其提交给进一步处理lambda。 这是问题,这5个lambda将异步/同时运行。如何告诉这5个lambda互相等待,直到所有5个lambda完成工作,然后可以启动单独的lambda进行提交/进一步处理?因为只有使用单独的lambda函数完成所有5个旅行目的地的处理,才能进行进一步的处理。

我尝试寻找lambda阶跃函数,但这会破坏aync模式的美感。还有其他选择吗?

1 个答案:

答案 0 :(得分:0)

看看Step-Functions,它们将允许您将工作流程设置为状态机,从而允许您在lambda之间进行协调和传递数据。您还可以让它将数据传递到其他服务,例如ECS,SNS和SQS。