我们可以放心地说,如果ESB提供编排功能,它就有资格成为BPM的实现吗?
我知道BPM有一个不同的目的,那就是对一些业务流程进行建模,这些业务流程的实现可以由任何简单的Java/J2EE应用程序、复杂的SOA应用程序或某些应用程序来完成,这些应用程序可以是我提供的BPM。是那么回事吗?
发布于 2012-04-12 01:54:15
第一个问题:
您的声明对于一些仅对请求-响应交互建模的业务流程是有效的。
但当涉及到复杂的业务流程时,除了编排功能之外,我们还需要考虑其他一些功能。在这里,我列出了一些这样的场景。
第二个问题:
是。但是,与您提到的实现机制相比,BPM引擎有几个优点。
一个优点是,不可能从Java应用程序中实现由BPM引擎提供的某种级别的建模抽象。假设我们使用JAVA应用程序实现了一个业务流程逻辑,并且该业务流程已投入生产。假设我们需要更改其合作伙伴服务的端点URL。在这种情况下,现在需要修改、重新编译业务流程实现并将其部署回生产系统。如果我们使用像WS-BPEL这样的业务流程语言标准来实现业务流程,我们可以非常容易地更改业务流程配置,并将其推送回生产环境。提高了效率,降低了业务维护成本。此外,还有其他原因,如易适应性和灵活性。
发布于 2012-04-12 22:50:19
我在一段时间前创建了这些幻灯片,以确切地解释如何同时使用它们以及它们之间的关系:http://www.slideshare.net/salaboy/jbpm5-community-training-module-25-bpm-for-developers
您需要了解BPEL/ESB/Orchestration和BPMN (面向业务)之间的不同视角,它们具有非常不同的作用域。
干杯
发布于 2013-05-15 23:27:03
通常,ESB被分配到中间层-将低级服务编排成更大的服务单元,这些服务单元将向业务公开,以便在流程中使用-以及顶层的BPM。
因此,BPM将在业务流程编排层中使用,而ESB将通过在业务服务和服务支持中工作来实现和促进这一点。
换句话说,要成功处理业务流程,首先需要将所有系统和应用程序公开为服务;这就是ESB发挥作用的地方。
你可以看到这个链接:http://blogs.mulesoft.org/why-bpm-and-esb-need-to-work-together/
https://stackoverflow.com/questions/10108465
复制相似问题