【发布时间】:2019-09-14 08:45:44
【问题描述】:
我正在尝试使用 Uber Cadence 了解子工作流程的用例。与简单地将工作流程拆分为函数相比,子工作流程的优势是什么?我有一个相当复杂的工作流程,我正在考虑将其拆分为多个子工作流程,但我不确定这样做的利弊。
【问题讨论】:
标签: cadence-workflow temporal-workflow
我正在尝试使用 Uber Cadence 了解子工作流程的用例。与简单地将工作流程拆分为函数相比,子工作流程的优势是什么?我有一个相当复杂的工作流程,我正在考虑将其拆分为多个子工作流程,但我不确定这样做的利弊。
【问题讨论】:
标签: cadence-workflow temporal-workflow
子工作流与将所有应用程序逻辑并置在单个工作流中的主要限制是缺乏共享状态。父子只能通过异步信号进行通信。但是,如果它们之间存在紧密耦合,则使用单个工作流并仅依赖共享对象状态可能会更简单。
如果您的问题在执行的活动和处理的信号数量方面有限制,我个人建议从单个工作流实施开始。它只是比多个异步通信工作流更简单。
此外,人们经常注意到工作流不仅仅是函数,您还可以在其中使用 OO 的全部功能。使用结构、接口和其他 OO 技术将逻辑分解为更易于管理的抽象。
【讨论】: