Apache camel Camel与BPM中的工作流

Apache camel Camel与BPM中的工作流,apache-camel,business-process-management,fuseesb,Apache Camel,Business Process Management,Fuseesb,我们使用Apache camel作为工作流引擎。首先,我们使用WebService One并等待响应,基于响应调用WebService 2或WebService 3。这是一个纯工作流,有两个类似的工作流步骤。我很少有机会使用BPM产品,像JBOSS BPM等。除了长时间运行和支持人工任务之外,还有什么好的理由让我们选择BPM产品吗?如果我们的项目中不需要长时间运行和人工任务支持,那么我们可以使用Camel或jbossfuse来协调业务流程吗 谢谢, 狮子座。狮子座,这是一个非常有趣的问题。我碰巧

我们使用Apache camel作为工作流引擎。首先,我们使用WebService One并等待响应,基于响应调用WebService 2或WebService 3。这是一个纯工作流,有两个类似的工作流步骤。我很少有机会使用BPM产品,像JBOSS BPM等。除了长时间运行和支持人工任务之外,还有什么好的理由让我们选择BPM产品吗?如果我们的项目中不需要长时间运行和人工任务支持,那么我们可以使用Camel或jbossfuse来协调业务流程吗

谢谢,
狮子座。

狮子座,这是一个非常有趣的问题。我碰巧有使用ESB、ApacheCamel和BPM系统的经验。作为充分披露,我是Intalio,Inc.的首席建筑师

ApacheCamel是处理来回数据流的一个很好的解决方案。正如您所指出的,众所周知,BPM系统会增加对人工任务的支持。Intalio | bpms还增加了对使用合作伙伴链接的异步流程上的复杂编排的支持。Intalio | bpms(以及其他解决方案)还可以监控流程实例,捕获KPI并将其作为用户的仪表板使用。您还可以通过使用允许业务部门输入条件或计算以更改流程数据(例如,实时更改特定供应商的折扣率)的业务规则来提高运行时的灵活性

在设计时,BPM套件围绕更好地记录流程并让业务和IT更好地协作的理念添加了许多功能。有些套件以业务用户为目标,有些套件更面向IT,但它们通常定义工件,以提供对流程的高级理解


我希望这会有帮助。

是的。。正如Antoine提到的,从技术角度来看,这听起来可能很相似,但如果您使用Camel作为状态机来移动数据,那么您根本没有在执行BPM,您离BPM还有很长的路要走

BPM在一个简单的状态机上增加了很多。从您用来为业务场景建模的语言开始,到BPM提供的工具,如果您只使用camel,您将损失很多。我可以从技术的角度理解您的问题,但从更广泛的公司角度来看,您无法比较解决方案

我认为你需要问自己以下问题:

1) 您是否有兴趣与非技术人员共享调用哪些web服务(此时您的骆驼路线)

2) 您是否会对获取审计日志和类似仪表板的屏幕感兴趣,以分析您为做出业务决策而调用的服务的情况

3) 您的路线是否根据业务决策发生了很大变化?例如,因为您的公司正在根据合作伙伴关系或成本更换供应商而调用不同的web服务

4) 在5年内,您的系统交互(和骆驼路线)将有多大

5) 您是否需要满足标准或法律规定

如果最后5个问题的答案是否定的,那么使用camel并将web服务编排保持在camel路线上是很好的,因为这只是一种保持代码干净和可维护的方法,但它将始终对公司的其他人员隐藏