【发布时间】:2019-04-13 02:51:21
【问题描述】:
这与 AWS Lambda 实施有关。我正在研究.netcore 中的一些 lambda 函数。有 14 个不同的旅游目的地,在票价、酒店预订、租金等方面有不同的规则和规定。我有一个图书馆来处理每个旅游目的地的这些规则。在那个图书馆里,我总共有 14 个班级负责人到这些旅游目的地。最后,当一些代理想要预订多个目的地时,他们需要在最后提交它们,以便由单独的图书馆处理进一步的流程。 现在,我点击了 14 个不同的菜单项,打开了旅行目的地的选择过程。我们正在尝试将此应用程序转换为使用 AWS lambda。最初,我们认为每个旅行目的地只有一个 lambda;当提交行程以进行进一步处理时,最终有 14 个不同的 lambda 和一个单独的 lambda 用于进一步处理。因此,当任何用户点击任何旅行菜单项时,规则和规则、逻辑将由指定的 lambda 函数处理。
但是,代理可以保存他们的行程并在将来安排他们的另一项功能。此类行程必须仅在预定日期处理。假设其中一个行程配置了5个目的地,则指定5个lambda将处理这些目的地进行规则和规定,然后需要将其提交给进一步处理lambda。 这是问题所在,这 5 个 lambdas 将异步/同时运行。我如何告诉这 5 个 lambdas 彼此等待,直到所有 5 个完成工作,然后可以启动单独的 lambdas 以进行提交/进一步处理?因为只有在使用单独的 lambda 函数完成所有 5 个旅行目的地的处理后,才能进行进一步的处理。
我尝试寻找 lambda 阶跃函数,但这会扼杀异步模式的美感。还有其他选择吗?
【问题讨论】:
-
用更短更简单的话来说,我必须同时处理旅行目的地 lambda,一旦全部完成,然后将所有内容发送到进一步处理 lambda。我需要找到一些机制,使所有旅行目的地 lambda 彼此等待完成,以便在所有工作完成后将所有内容发送到进一步处理 lambda。