JBPM和BPEL/ESB的区别



JBPM和BPEL(以及ESB)之间的区别是什么?你能解释一下吗?

RGDS

我对JBPM不太熟悉。但它似乎是一个业务工作流,可以与java服务或基本上基于java的流程一起工作。不仅仅是web服务。

BPEL是使用web服务编写工作遵循的标准。始终使用BPEL语言来集成web服务并在此基础上定义流程。这是我为[1]写的一个例子。

ESB主要用于中介和转换消息。当您集成不同类型的系统时,它们之间的消息流可能会有所不同。因此,人们可以使用ESB作为中介。一些esb也提供服务集成。WSO2 ESB[2]就是这样一个您可以使用的ESB。

[1] http://wso2.org/library/articles/2011/05/integrate-business-rules-bpel

[2] http://wso2.org/library/esb

确切地说,ESB + BPEL是针对集成问题的技术解决方案。如果您只想使用jBPM5进行集成,那也可以,您可能会将jBPM5与ESB一起用于消息的所有中介和转换。BPMN2是一种描述业务流程的标准符号,它的强大功能将帮助您描述更高级/面向业务的场景,而不仅仅是简单的系统集成。人类交互的概念在语言和jBPM5基础设施中得到了大量的嵌入。考虑这样一个事实:您的模型(业务流程)可以被业务/非技术人员共享和理解,并且当业务现实发生变化时,他们将能够验证、改进和更改这些定义。

希望有帮助!

jBPM是基于BPMN的。这是针对您的工作流问题的基于java的解决方案。BPEL也解决了工作流问题,但方法完全不同。它是基于web服务的。从语法角度来看,BPEL比BPMN更复杂,但被认为更广泛。

我猜正确的比较应该是在BPMN和BPEL之间。

相似度
  • >都可以用于编排

技术差异

JBPM为工作流设计器提供了BPMN2.0符号,它生成的工作流XML符合BPM2.0(这意味着您可以在任何BPMN2.0工具中导入它)。它被认为是产品分析师友好的,而BPEL有自己的规范,并且被认为更面向开发人员

BPM应该只在存在人工任务的地方使用,否则ESB将完成从编排到转换到规则到CEP的所有工作

最新更新