何时使用工作流程引擎-使用和滥用

时间:2019-07-08 08:59:25

标签: workflow batch-processing jbpm rule-engine business-process-management

上下文:

我应该开发一个软件来为许多客户计算帐单 该软件应由不同的地方主管部门使用,每个地方主管部门都有自己的规则来计算向其公民收取的费用。 首先,我想到了一个工作流引擎,以便“设计”不同的计算流程,然后将其应用于客户。

过去,我对工作流管理器产品有一点经验(我与IBM BPM一起工作过一点),并且我很难调试出现问题时会发生的情况,并且发现了很多性能问题(尊重到简单的OOP软件)。 也许这些困难是由于我对该工具的了解不足造成的,或者也许IBM BPM不如IBM所说。

无论如何,相对于我的目标(生成自定义帐单,并使其在配置和过程过程中尽可能灵活)是工作流引擎是否合适? 关于工具,框架,最重要的是如何解决问题的任何建议。

我对体系结构的最初想法是用c#开发一个主要软件(我更自信),并使用工作流引擎(如JBpm)作为黑匣子,将先前配置的流调用到bpm中。

1 个答案:

答案 0 :(得分:0)

对于您的用例,我建议使用Cadence Workflow。它在执行历史记录中记录与工作流程相关的所有事件。它使生产问题的疑难解答变得非常简单。

由于工作流本质上是Java(或Go)程序,因此在实现上具有无限的灵活性。 Cadence完全是为实现高可扩展性而构建的,因此性能也不是问题。经过测试,它可处理超过一亿个开放工作流和每秒数万个事件。

请参见介绍Cadence编程模型的the presentation