首页 理论教育 服务编排模式-《软件制造工程》

服务编排模式-《软件制造工程》

时间:2023-11-23 理论教育 版权反馈
【摘要】:服务编排模式有以下5点关键概要描述:应用逻辑封装将服务封装的排序与服务分离开来。以小粒度的服务组合成大粒度的服务。短生命周期的流程会在一个单独的线程中被立即执行。基于特定的工作流或消息流的实现。它还会管理流程共享的状态、事务管理、操作补偿和错误处理。基于Web服务的商业流程执行语言提供了一种定义商业流程的工业标准。WBISF提供了基于BPEL4WS的服务编排的实现,因此服务编排以WSDL描述同时以Web服务的方式提供给服务消费者。

服务编排模式-《软件制造工程》

服务编排模式有以下5点关键概要描述:

(1)应用逻辑封装将服务封装的排序与服务分离开来。

(2)以小粒度(Small-Grained)的服务组合成大粒度(Large-Grained)的服务。

(3)模式化地实现商业流程并自动执行。

(4)监视商业流程的执行效果。

(5)实现工作流解决方案

该模式中还存在一些变化。短生命周期(Short-lived)的流程会在一个单独的线程中被立即执行。这些流程只能直接调用自动(可执行的)操作,如访问数据库或调用异步的Web服务。长生命周期(Long-lived)的流程会持续一段不确定的时间,它们有可能会在执行过程中被暂停,其状态会被保存起来,以便等待接收商业事件中的人工交互。长生命周期流程调用人工交互需要有客户接口让用户完成查找和实现任务,对工作项目(Work-Item)排队等功能。

实现服务编排的技术有:(www.xing528.com)

(1)基于BPEL4WS(WBISF)标准的服务编排实现。

(2)基于特定的(Proprietary)工作流(如MQ工作流)或消息流(如WBIMessage Broker)的实现。

服务编排实现了一个商业流程,并使这个商业流程以服务的形式提供给消费者。在商业流程中定义了一系列的操作,并在流程中包含执行的商业规则。操作中可以引入与外部服务或人工的交互,服务编排将管理服务的调用和人工的交互。它还会管理(在流程生命周期中)流程共享的状态、事务管理、操作补偿(Compensation)和错误处理。服务编排可以同步或者异步地调用服务,同时也能提供回调功能使服务可以调用编排的服务流程。

基于Web服务的商业流程执行语言(BPEL4WS)提供了一种定义商业流程的工业标准。这个标准要求使用WSDL描述流程,并且这些流程能像Web服务一样被访问。BPEL4WS要求在商业流程操作中调用的服务要以WSDL描述,由此这些服务需要被实现为Web服务,还要求有一个适当的运行时环境可以以Web服务的方式调用商业流程。WBISF提供了基于BPEL4WS的服务编排的实现,因此服务编排以WSDL描述同时以Web服务的方式提供给服务消费者。图3-13所示为以WSDL描述和Web服务实现的BPEL流程。在不同操作中的服务调用也是以WSDL描述,以Web服务的方式进行访问。WBISF还支持BPEL4WS定义的特征,如流程状态处理、故障、出错、回调和补偿等。

图3-13 以WSDL描述和Web服务实现的BPEL流程

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈