使用Akka / Scala构建流程引擎

问题描述 投票:0回答:1

目前,我正在尝试在Akka / Scala中实现流程引擎的原型,该原型正在解析XML文件,然后执行一些BPMN流程元素。我想从一个可用作XML文件的基本BPMN流程开始。

我认为一个好方法是使用FSM。因此,首先可以将XML文件解析为数据结构,例如划分为节点(子类作为任务,网关等)和序列对象(例如必须具有状态,因此它知道从哪个节点进入哪个节点)。

为了知道过程何时结束,我正在考虑使用令牌?当令牌到达该功能时,它知道它已完成。

他们是一些流程引擎,我看了一下但不太了解它们,它们也太复杂了:

https://github.com/catify/bpmn-engine

另外我不太确定,如果我应该编写自己的解析器或“只是”使用已经给定的解析器并修改它们

有人有经验或建议吗?

akka bpmn fsm workflow-engine
1个回答
0
投票

你看过Uber Cadence吗?它允许将您的逻辑指定为代码,因此您只需要为XML编写解析器并解释您的数据结构。所有的容错性和耐久性都已由发动机解决。

© www.soinside.com 2019 - 2024. All rights reserved.