【发布时间】:2021-10-12 05:29:18
【问题描述】:
我们有一个用例,我们启动一个工作流(通过调用@Execute 方法)并为后续活动安排一个计时器。现在,这种工作流的触发是基于 API 调用,可以由客户端多次触发。
- 想知道 SWF 流如何处理@Execute 方法的多次调用。
- 它会创建多次执行吗?
- 或者是否会为同一工作流执行安排多个计时器时钟?
【问题讨论】:
标签: amazon-web-services workflow amazon-swf
我们有一个用例,我们启动一个工作流(通过调用@Execute 方法)并为后续活动安排一个计时器。现在,这种工作流的触发是基于 API 调用,可以由客户端多次触发。
【问题讨论】:
标签: amazon-web-services workflow amazon-swf
SWF 只允许每个 ID 执行一个打开的工作流。因此,如果工作流仍在运行,再次调用 Execute 方法将返回 WorkflowExecutionAlreadyStartedFault。
请注意,如果一个工作流完成,新的工作流即使对于相同的 ID 也会启动。
temporal.io 是 SWF 的开源版本,另外还有一个 WorkflowIdReusePolicy,它指定了如果已经完成工作流应该做什么。
【讨论】: