workflow - 使用状态机模式可以实现并行拆分工作流吗?

标签 workflow state-machine state-machine-workflow

或者我应该说,实现并行拆分任务的正确方法/工具是什么?

我有工作流中涉及的实体的单个状态/状态。我可以为每个并行路径添加一些额外的状态,但是有更好的方法吗?

谢谢

编辑

这还不是一个完整的答案,但经过大量研究后我最终所做的是为状态机创建一种包装器。我看到的现有工具开销太大,无法满足我的需求。每个状态机都是一个“进程”,进程的每个状态都是“ session ”的一部分。 session 又具有 session key ,它只是每个进程当前状态的集合。

我将 session key token 序列化为字符串,因此持久 session 如下所示:

"enroll=get-contact|verify=null|authorize=null"

各种状态的触发器可以指定并行分割作为目标。实际上看起来效果很好。

最佳答案

状态机与状态之间的执行语义无关。状态机所做的就是呈现状态之间的转换以及在转换期间验证和运行的逻辑。

转换期间运行的逻辑本身可以并行运行,例如通过生成新线程。线程可以与执行异步运行,也可以生成它们,然后作为主线程的一部分连接回主线程。

关于workflow - 使用状态机模式可以实现并行拆分工作流吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19734862/

相关文章:

java - 状态机工作流框架

spring-boot - 用于休息服务请求的 Spring 状态机配置

iphone - 使用 Safari 的 Web Inspector 调试 PhoneGap 的工作流程

git - 将分支中的文件 check out 到该文件不存在的工作分支中

uml - 状态机和状态图是同一个意思吗?

c++ - Boost StateCharts 与 Samek 的 "Quantum Statecharts"的比较

node.js - Minikube 和 docker 上的开发工作流程

.net - 如何基于外部事件可靠地创建工作流实例?

ruby-on-rails - 跳过状态机方法的所有验证

c# - 使用状态机时的错误处理