数据库网格计算7

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2013-8-6
12

接口3 接口3定义了一系列的API函数来调用第三 方的应用程序。
2013-8-6
13
接口4
接口4定义了工作流引擎的互操作。
Wf-XM L 绑定
XML
文档 转为 XM L 工作流引擎 A 接口 4 转为 方法调用
XML
转换为 方法调用 接口 4 转换为 XM L 工作流引擎 B
2
2013-8-6
独立的pre-OGSA网格服务
网格用户 网格应用程序
网格中间件
网格服务
网格
图7.1通过相互独立的网格服务访问网格
2013-8-6
3
相互依赖的相容网格服务
网格用户
网格应用程序
OGSA兼容网格中间件
网格
OGSA服务 服务组合 服务交互 组合的OGSA服务
图7.2通过相互依赖的OGSA服务访问网格
图7.9 一个WSCI例子
2013-8-6
24

BPEL4WS
Web 服务的业务过程执行语言BPEL4WS(Business Process Execution Language for Web Services)[11]由IBM、Microsoft和BEA提出,基于 WSFL和XLANG并结合了块结构的XLANG和基于图形的WSFL的特点。 BPEL4WS正渐渐取代XLANG和WSFL。
11
2013-8-6

接口2 接口2定义了客户端应用程序如何与不同的 工作流系统交互。它表示为一系列的API函 数,用来控制过程,活动和工作列表处理。 这些API函数最初用C语言来编写,后逐渐 用CORBA IDL和Microsoft的对象连接和嵌 入OLE(Object Linking and Embedding)重 新编写。
接口3
客户端 应用程序
被调用 应用程序
图7.4 WfMC参考模型
2013-8-6
7
工作流运作服务
工作流运作服务提供了运行时环境,在这个环境中可以 执行一个或多个工作流过程,工作流运作服务可以调用 多个实际的工作流引擎。工作流运作服务可以是同构服 务或异构服务。一个同构服务包括一个或多个兼容的工 作流引擎,这些工作流引擎为工作过程的运行时执行环 境提供了一系列过程定义属性。另一方面,一个异构服 务包括两个或多个异构服务,这些异构服务遵循在所定 义的一致性级别上的互操作性的通用标准。当调用异构 服务时,在工作流引擎之间需要一个标准化的互换格式。 使用接口4(本节后面介绍),运作服务可以将活动或 子过程传送到其他的运作服务中运行。
16



2013-8-6
7.3 面向Web服务的流语言
XLANG X.LANG[8]最初由微软提出,用来描述一个进程作 为业务流的一部分如何工作。它是一种块结构 的语言,带有基本控制流结构:<sequence>和 <switch>用于条件路由选择;<while>用于循环; <all>用于并行路由选择;<pick>用于基于时间 片或外部触发的竞争条件。XLANG主要用于业 务流的创建和Web服务提供者之间的交互。它也 包含一个健壮的异常处理机制,通过补偿支持 长事务处理。
2013-8-6 4
7.2工作流管理联盟
WfMC所定义的工作流如下: 能够完全或者部分自动执行的业务过程,它根据一系列过程规则, 文档、信息或任务能够在不同的执行者之间进行传递与执行[2]。
WfMC所定义的WFMS如下: 通过软件定义、创建工作流并管理其执行。它运行在一个或多个工作流引 擎上,这些引擎解释对过程的定义,与工作流的参与者(包括人或软件) 相互作用,并根据需要调用其他的信息技术工具或应用[2]。
2013-8-6 23
<process name=”Order” instantiation=”message”> <sequence> <action name=”ReceiveOrder” role=”Agent” operation=”tns:Order” /> <action name=”ConfirmOrder” role=”Agent” operation=”tns:Confirm”> <correlate correlation=”tns:ordered”/> <call process=”tns:Order”/> </action> </sequence> </process>
2013-8-6
8
工作流引擎 1、基于调度的范例 数据流范例 信息抽取范例 2、工作流引擎任务 过程选择 任务分配 运作控制,运行监控和故障修复

2013-8-6
9

WfMC接口
流程定义工具
接口1 工作流API和交换格式 工作流运作服务 其他工作流运作服务
接口5
管理和监控工具
第7章 网格调度和资源管理
本章学习目的:


工作流管理系统是什么及其在网格中扮演 的角色 建立工作流系统相关的技术 网格工作流系统的尖端发展
2013-8-6
1
7.1 引言
本章内容的安排

7.1 引言

7.2 工作流管理联盟 7.3 面向Web服务的流语言 7.4 面向网格服务的流语言 7.5 网格工作流管理 7.6 本章总结 7.7 进一步的阅读和测试

2013-8-6 17
如图7.6所示,这个 XLANG例子指定 了两个服务的执行 顺序,这两个服务 分别是服务A和服 务B,均是用WSDL 描述它们的接口。
<definition> ServiceA WSDL description ServiceB WSDL description <xlang:behavior> <xlang:body> <xlang:sequence> <xlang:action operation=“OpA" port=“ServiceA" activation="true"/> <xlang:action operation=“OpB" port=“ServiceB"/> </xlang:sequence> </xlang:body> </xlang:behavior> </definition>
图7.6 一个XLANG例子
2013-8-6
18
Web服务流语言 Web服务流语言WSFL(Web Services Flow Language)[9]最初由IBM提出,是一种基于 图形的语言,它为特定进程定义了活动和 数据交换的特定顺序。它不仅定义了执行 序列,还定义了流中对特定操作的每一步 的映象,参看流程模型和全局模型。
接口4
工作流引擎
工作流引擎
接口2
接口3
客户端 应用程序
被调用 应用程序
2013-8-6
10

接口 1 这个接口定义了一个通用的元模型(用于描 述工作流程定义)、一个文本语法(使用 工作流过程定义语言WPDL(Workflow Process Definition Language)编写,用于过 程定义交换)和一系列API函数(用于操作 过程定义数据)。WPDL已经被XML过程定 义语言XPDL(XML Process Definition Language)[4]代替,XPDL使得可以通过 XML以标准化的格式给出过程定义。
Web 服务 Web 服务
基本活动 BPEL4WS 过程模型
文档
图7.5 通过Wf-XML进行工作流引擎的互操作
图7.5 通过Wf-XML的工作流引擎的互操作
2013-8-6 14

接口5 接口5允许几个工作流服务来分享多种通用 管理和监控函数。这些推荐的接口提供了 一个机构中的工作流状态的完全视图。
2013-8-6
15


WfMC参考模型中的其他组件
过程定义工具给用户提供了分析和模仿实际的业务流程的 能力以及产生相应表示的能力。过程定义的设计和过程运 行时间相分离,使得实现这个接口的任意工作流系统在任 何时间执行过程定义成为可能。 客户应用程序和工作流引擎交互,向引擎请求设备和服务。 客户端应用程序可以执行一些通用函数,如工作表处理函 数,进程实例初始化和进程状态控制函数。 被调用应用程序是被WfMS调用的应用程序,它完全或部 分地执行一个活动,或者在处理一个工作条目时支持一个 工作流参与者。通常这些被调用的应用程序是基于服务的, 而且没有任何用户接口。接口3为标准调用定义了API函数 的语义和语法,其中标准调用包括会话的建立,活动管理 和数据处理函数。 管理和监控工具用于管理和监控工作流。管理和监控工具 可作为独立的应用程序存在,它可以和不同的工作流引擎 交互。此外,它可被实现为工作流运作服务的主干部分, 并带有管理其他工作流引擎的附加功能。

2013-8-6
19

流程模型 WSFL中的流程模型指定 了组合Web服务的执行 顺序,还定义了在所调 用的Web服务间的控制 和数据流的交换。图7.7 是WSFL中的流程模型的 例子,它指明了两个服 务提供商如何进行协作。 控制链(controlLink)和 数据链(dataLink)用于 在服务互换中将数据和 控制分离开来。
<flowM odel name=“myWorkflow” serviceProvierType=“” <serviceProvider name=“ProviderA" type=""> <locator type=”static” service=”ProviderA.com”/> </serviceProvider> <serviceProvider name=“ProviderB" type=""> <locator type=“static” service=“ ProviderB.com”/> </serviceProvider> <acti vity name=“ActivityA”> <performedBy serviceProvider=“ProviderA”/> <implement><export><target portType=“” operation=”OpA”/> </export></implement> </activity> <acti vity name=ActivityB> <performedBy serviceProvider=“ProviderA”/> … </acti vity> <controlLink source=“ActivityA” target=“ActivityB”> <dataLink source=“ActivityA “ target=“Acti vityB”/> <map sourceMessage="" targetMessage=""/> </dataLink> </flowModel>
图7.7 一个WSFL的流程模 型示例
2013-8-6
20
全局模型 WSFL中的全局模型描述了组合Web服务如何 相互交互。根据WSDL,这些交互被模型化 为Web服务接口端点中的链接,每个链接都 相当于一个Web服务与另一个接口的交互。

2013-8-6
21
WSCI Web服务编排接口WSCI (Web Services Choreography Interface) [10],最初由SUN,SAP, BEA和Intalio提出,是基 于块结构的语言,它描述 了那些参与协作交换的 Web服务间的消息互换。 WSCI目前发布为W3C。

WSCI Web 服务 Web 服务
WSCI
合作
WSCI Web 服务 Web 服务 WSCI
图7.8 WSCI视图
2013-8-6
22
WSCI支持下列编排类型的定义。 顺序执行: 按一定顺序执行活动。 并行执行: 所有的活动都要执行,但可以 按任意顺序执行。 循环:可基于条件或表达式的值重复执行 活动。WSC支持for-each、while和repeat-until 几种类型的循环。 条件执行:根据条件值(<switch>)或基于 某一事件的发生(<choice>)执行一系列活 动中的一个。
2013-8-6
5ห้องสมุดไป่ตู้
现实世界 过程模型 实 例 化 业务过程
映射
工作流技术 工作流模型 实 例 化 工作流过程
图7.3 业务过程到工作流过程的映射关系
2013-8-6
6
流程定义工具
接口1 工作流API和交换格式 工作流运作服务 其他工作流运作服务
接口5
管理和监控工具
接口4
工作流引擎
工作流引擎
接口2
相关文档
最新文档