有没有一种方法可以禁用步骤函数中的某些并行进程



我的场景如下:

当一个事件发生时,需要并行执行几个进程。

一个阶跃函数似乎是理想的:

例如

Event received:
- Parallel 1 - Send an SMS message
- Parallel 2 - Send an email
- Parallel 3 - Write data to a database
Gather all completed results to determine success / failure.

但是,根据事件的类型,我可能只想执行其中的几个过程。

例如:传入的客户数据不包含电子邮件地址,因此我们希望跳过电子邮件过程。

步骤功能是否有方法根据初始事件的类型启用、禁用某些并行过程?

以下是两种将是-否决策逻辑应用于每个并行分支的方法:

  1. 在每个并行分支的开头添加一个双分支Choice State。例如,与{"Variable": "$.email", "IsPresent": true}匹配的有效载荷继续到Parallel 2分支,但在其他方面绕过它
  2. 使用SDK在Lambdas中执行并行任务。在每个Lambda的开头使用分支逻辑来决定是否处理有效负载

最新更新