您好,欢迎来到画鸵萌宠网。
搜索
您的当前位置:首页Web服务组合方法综述

Web服务组合方法综述

来源:画鸵萌宠网
维普资讯 http://www.cqvip.com 第34卷 第4期 、,0f1.34 ・计算机工程 2008年2月 February 2008 No.4 Computer Engineering 软件技术与数据库・ 文章编号:1000 ̄3428(2008)04---4)079-03 文献标识码:A 中圈分类号:TP393.02 Web服务组合方法综述 倪晚成,刘连臣,吴澄 (清华大学国家CIMS工程技术研究中心,北京100084) 摘要:Web服务组合通过重用已有的Web服务满足用户高质量的应用需求,是面向服务架构研究领域的热点问题。该文对当前Web服 务组合的研究现状进行了综述,分析了WSC的概念和实现框架。根据研究侧重点及其依赖的技术基础,将WSC方法归为两大类别——基 于工作流、状态演算和进程代数模型描述的过程驱动的组合方法和基于语义描述的自动服务组合方法。对WSC的评价模型及其研究与应 用中所面临的挑战进行了论述。 关健词:面向服务架构;Web服务;Web服务组合 Survey 0n Web Services Composition Methods NI Wan-cheng,LIU Lian-chen,WU Cheng (National CIMS Engineering Research Center,Tsinghua University,Beijing 100084) [Abstract]Web service composition,as a new technology to fulfill the user’s requirements using existing ones,has become a pop topic in the research of Service Oriented Architecture(SOA).The survey is made on current WSC methods.The concepts and implementing famewo ̄s of WSC rae discussed.And based on the research emphases and its dependent technology,WSC methods are classified into process driven WSC such as work—flow based,state—ifgure and process algebra based methods,and semantics based automatic WSC.The evaluation models and the challenges in research and implementation of WSC have been summarized. [Key words I Service Orien ̄d Architecture(SOA);Web service;Web service composiiton 2004年以来,Web服务作为跨组织应用集成的支持技术 语言变为具有语义的需求描述传递给组合管理器。 得到业界的广泛支持,面向服务架构(Service Oriented (4)组合管理器根据需求描述和来自服务库的服务描述, Architecture,SOA)成为信息技术的新热点。SOA的一个重要 生成满足服务需求的组合方案,传递给执行引擎。 理念是将“单独、、封装”的服务组合成为更大型的服 (5—7)执行引擎将组合方案传递给服务匹配器,服务匹配 务,实现软件重用、发挥服务的潜力。因此,Web服务组合 器根据服务描述选择最适合的Web服务,将其旬柄返回执行 受到学术界和企业界的极大关注,涌现出大量的WSC研究。 引擎。 1 WSC概念 (8)执行引擎根据组合方案和Web服务旬柄调用并监控 WSC源于软件重用,其基本思想是使用系统中已有的 Web服务执行。 Web服务,通过它们一定顺序的组合或组合顺序的改变,创 (9)最终将执行结果传递给服务请求者。 建出新的或更高质量的服务满足用户需求。 目前对WSC尚无统一定义,研究者从不同角度和侧重 点做了不同的定义。总的来说,其定义可归纳为两个:(1)基 翻译器 ㈣ 案 于过程模型:从WSC内在因素的角度,将其定义为一个依 辐 埭 赖于特定控制流和数据流结合起来的、能够完成一定任务的 基 服务请求者 0 执行引擎 Web服务集合,如AgFlow…。(2)基于构件单元:从构件的角 度,将WSC定义为一个由自治且能相互协作的自描述单元 所组成的系统,如文献【2】。上述定义分别强调了WSC两个 不同的研究角度。 圈1 WSC实现框架 2 WSC实现框架 根据消息在参与组合的服务之间的传递方式,执行引擎 典型的WSC的实现框架包括2种用户角色(服务请求者 分集中和分布两种模式,如图2所示。集中模式下服务由执 和服务提供者)和5个部件(翻译器、组合管理器、执行引擎、 行引擎统一控制,服务之间无交互,该方式易于实现,但瓶 服务匹配器和服务库),可选部件本体库为服务描述提供本体 颈明显。分布模式中,由前序服务启动后继服务,通过服务 定义和推理支持,如图1所示。 间的消息传递减小系统通信负载、消除瓶颈。 WSC流程如下: 作者倚介:倪晚成(1978--),女,博士研究生,主研方向:网格计算, (1)服务提供者通过服务注册将服务信息发布到注册中 动态服务组合;刘连臣,副研究员;吴澄,教授、博士生导师、 心的服务库。 中国工程院院士 (2-3)服务请求者提交的服务需求经翻译器处理,从自然 收稿日期:2007—02—22 E-mail:nwc01@mails.tsinghua.edu.cn 79_一 维普资讯 http://www.cqvip.com 成的组合方案有效,如CAFISE_4 采用“逐步演化”法:将服 务匹配环节推迟到某个服务节点启动时进行,服务匹配操作 查询当前可获得的最佳目标服务,以保证每个被选取的Web 服务当前时刻最佳并且可获得,从而较大限度地降低执行中 的异常出现;同时将抽象工作流到实际组合方案的转换工作 分散到各个活动执行前进行,也能降低执行引擎在服务查找 和绑定时的开销。 基于工作流模型的WSC通常以半自动的方式实现:系 W 统提供图形化界面,服务设计者通过人机交互定义抽象服务 集中式执行引擎实现 分布式执行引擎实现 流;服务匹配和绑定则由系统自动处理。这种方式充分利用 了设计者的领域知识降低系统复杂度,又减少了设计者工作 圈2执行引擎模式 3 WSC方法分类 WSC研究者有各自不同的角度和侧重点。一部分研究强 调“自动化”:根据人工参与的程度将WSC分为人工、半自 动和自动3大类;另一部分研究则强调“动态”:根据对参与 组合的Web服务的绑定时间,将其分为静态WSC(参与组合 的Web服务在设计时确定)和动态WSC(参与组合的Web服 务在运行时绑定)。 上述分类各自涵盖了WSC的部分研究。这源于目前的 WSC研究者来自两个派别:第一类研究者从语义网的角度出 发,重视Web服务的自描述和语义;另一类研究者则从流程 建模的角度出发,重视WSC中的数据流和控制流,强调对 动态环境的处理。两种研究方向依赖于不同的技术基础,使 用完全不同的WSC模型,这也是目前WSC存在两种定义的 根源。 因此,本文根据WSC方法所依赖的技术基础,将其归 纳为过程驱动的组合方法和语义驱动的组合方法。 3.1过程驱动的WSC 过程驱动的WSC基本思想是利用WSC与过程模型的相 似性,使用较成熟的过程建模工具和语言对WSC业务过程 进行建模,采用“替代”法将过程模型中的相关组件最终替 换成为具体的Web服务,从而获得有效的、可执行的WSC 方案。根据具体的建模工具和实现技术,过程驱动的WSC 又可分为基于工作流模型、基于状态演算和基于进程代数豁 WSC。 3.1.1基于工作流模型的WSC 工作流模型由于发展较成熟且支持工具较多而成为过程 驱动WSC中最常见的建模工具。WSFL、BPEL4WS等扩展 的工作流语言是该类方法的常用建模语言。 此类方法中,工作流被用作分布活动的协调引擎或服务 组合的建模定义的工具。该类方法 基于扩展工作流模型, 存在抽象服务(Abstract Service,AS)和实体服务(Concrete Service,CS)两个概念。AS是一个完全抽象的定义,它被作 为“占位符”替代具体活动来建立工作流模型;CS与AS相 对,对应系统中的一个实际Web服务。该类方法包括两个阶 段的内容:(1)WSC设计者为工作流中每个活动设定一个AS, 形成抽象服务流程定义;(2)执行前通过中间环节(如图1中执 行引擎)进行服务的匹配和绑定,将每个AS替换成为一个 cs,将抽象服务流转换成实际的WSC方案。AS也称服务模 版,因此该方法又称“基于服务模板的组合方法”。 由于参与组合的任一服务不可用都可能导致整个组合方 案崩溃,因此研究如何克服动态环境的影响,在基于工作流 模型的WSC方法中十分重要。现有的方法是尽可能保证生 ~8 一 量,可实现性强,并具有较好的动态性和灵活性。 3.1.2基于状态演算的WSC 基于状态演算的WSC方法基本思想是建立WSC描述和 服务状态图模型的一一映射关系,建立形式化的WSC模型, 通过形式化模型和工具分析WSC系统。其中,Petri网模型 的“安全、死锁、可达”等定义在描述并发、冲突、同步等 流程现象上极具优势,并具有良好的形式化语义和直观的图 形化描述,因此被较多地应用于对WSC方案的可行性分析 和验证。 文献【2】将Web服务的操作对应于Petri网的变迁;服务 状态对应库所;用库所与变迁之间的箭头表征状态间因果关 系;文献【5】则是将一个服务节点映射为Petri网中的库所。面 向对象Petri网和着色Petri网也在WSC建模中被使用 J。 基于状态演算的WSC方法本质上仍是基于工作流模型 的方法,但它侧重于对WSC的形式化建模,主要目的在于 验证WSC方案的有效性和可行性。 3.1.3基于进程代数的WSC 状态演算适用于静态系统描述,难以处理WSC的动态 特性。用于描述和分析并发、异步、非确定和分布式等系统 行为的进程代数,是对动态实体进行建模的正式语言,具有 严密的形式化语义,因此被引入到WSC研究中。其中支持 通道名称传递的兀演算由于适用于描述结构动态变化的并 发系统,而成为进程代数在WSC研究中应用的代表。 兀演算首先应用在构件系统中描述构件组合:Pahl[71基 于兀演算的“迁移性”和构件“演变性”的相似之处,为基 本的构件组合及替换原则建立了基于兀演算的描述框架。之 后兀演算与WSC结合起来,文献【8】通过建立Web服务描述 与兀演算中进程描述的对应关系,实现WSC的形式化描述。 由于兀演算相关工具可用于推演WSC的系统行为,并 能为分析验证WSC方案提供支持,因此也受到W3C的青睐: XLANG和WS—CDL都是通过建立兀演算和WSDL基本元素 的对应关系而提出的WSC描述语言。 基于兀演算的方法缺乏如Petri网的直观图形化支持,但 它对动态演化系统的灵活描述使它更适合刻画WSC的动态 行为。目前对基于Petri网和兀演算的WSC方法仍存在争议。 3.2语义驱动的WSC 与过程驱动的WSC不同,语义驱动的WSC强调Web 服务的自描述,其基本思想是通过为Web服务描述和服务请 求描述添加能被计算机系统所理解的语义,使WSC方案通 过推理自动生成。 3.2.1服务描述 服务描述对于语义驱动的WSC十分重要,最基本的服 务语义包括四元组 维普资讯 http://www.cqvip.com {,(数据输入),0(数据输出),P(条件输入),E(输出影响)) 常见的服务描述有: (1)OWL—S:由描述服务能力、服务工作过程和服务访问 细节的ServiceProfile,ServiceModel和serviceGrounding 3部 分组成。ServiceProfile涵盖了{,,O,P,日以及服务QoS语义, 满足计算机推理需求;ServiceModel则定义了WSC的内部流 程。因此被当前的绝大部分的WSC研究所使用。 (2)WSDL:描述服务URL和命名空间、服务类型、有效 函数、函数参数、参数类型以及函数返回值和返回值类型等 Web服务的通信和调用方法的XML文件。它是Web服务的 事实标准,但它仅通过“端口”规约了服务的功能特性,必 须扩充增加{P,日和QoS语义才能支持wsc。 (3)自定义语义:为实现wsc推理而定义的非标准简单 描述语言。如Sword 中基于规则的服务描述一一将服务描 述成在特定输入下产生特定输出的“规则”。随着OWL.S的 发展,这种服务描述已逐渐淡出。 3.2.2推理与选择 语义驱动的WSC通过对服务组合图的搜索,生成组合 方案。 服务组合图是一个改进的状态图:以用户请求的输入为 起点,输出为终点;图中状态代表一个服务;变迁代表前后 服务之间的语义关联(包括{,,o}数据相似度,{P,E}匹配度, 以及QoS要求的符合度)。 WSC推理就是在服务组合图上的反向搜索过程:以用户 需求为起点,首先寻找输出与用户需求目标一致的Web服务; 再寻找输出与该服务输入匹配的上一个服务;如此类推直到 找到输入描述与用户提供输入一致的服务为止。如果搜索获 得多个满足用户需求的组合方案,则需要通过评价选择一条 最优的方案执行。 在服务组合图上,最优组合方案表现为从起点到终点相 邻服务语义关联程度总和最大的一条路径,“最短路径”及其 改进算法是方案选择使用的普遍方法。 4 WSC评价模型 完善的指标体系对于评价WSC方案的优劣具有重要的 意义。目前的研究主要通过用户满意度或QoS评价WSC。 用户满意度作为一种主观指标难以量化,DOSCOMlJ叫使用组 合方案的语义相似程度表征用户满意度。更多的研究使用 AgFLow 提出的五维QoS模型。该模型包括执行成本、执 行时间、服务声誉、可靠性和可用性5个非功能性指标,如 表1、表2所示。 表1单个服务QoS模基 指标 单个服务指标函数 执行成本 q t。 【ic  , op) 一服劈 髁作印明飘仃厩夺 作印的执行成本 执行帅 腩声誉 …分 n一用户个数 q f( )=Nc(s)lK 可靠性 N ( )一要求时间内执行成功次数 K一总调用次数 可用性 qav(s)=( )一月 : 间内的可获得时间 表2蛆合服务QoS模基 指标 组合服务指标函数 执行成本 a (p)=∑:。q ( .,op。 执行时间 : … 仰 服务声誉 Q唧(p)=百1∑ N口 ( .) Q f(P)=n l(eq-dsOx ) 可靠性 f0-- 不在关健路径上 1 1. 在关健路径上 (P)=n ( 批 r) 可用性 7一』O-s,不在关健路径上  11, .在关健路径上 该模型对WSC的QoS进行了明确量化,但在服务提供 者利益不可忽视的情况下,仅能通过服务使用者和提供者是 否达成一致协议来判断WSC方案是否可行,缺乏评价模型。 5结束语 本文从WSC的概念、实现框架、典型方法和评价模型4 方面对研究现状进行了综述。根据WSC方法所依赖的技术 基础,将其分为:基于工作流,状态演算以及进程代数模型的 过程驱动的WSC方法和语义驱动的WSC方法。 WSC作为计算机科学与软件工程的新领域,尚存在两个 层面的基础问题:(1)实现层。尽管OWL.S进展迅速,但WSC 仍缺乏统一的、语义良好的语言规范,跨组织的WSC实现 缺乏基础支持。(2)评价层。WSC缺乏完善的评价模型。此外, WSC在应用实现中须处理动态变化的资源环境,不仅要研究 WSC方案的生成,更要确保组合方案的有效和高效性,如在 组合方案执行中对突发状态(如资源失效)的协调处理等。 参考文献 [1]Zeng Liangzhao,Benatailah B,Ngu A,et ai.QoS—aware Middleware for Web Services Composition[J].IEEE Trans.on Software Engineering,2004,30(5):31 1-327. [2]Hamadi R,Benatallah B.A Pem Net-based Model ofr Web Service Composition[C]//Proceedings of the 14th Australasian Database Conference on Database Technologies.Adelaide:ACM Press,2003. [3]Casati E Ilnicki S,Jin Lijie,et a1.Adaptive and Dynamic Service Composition in eFlow[C]//Proc.of hte International Conference on Advanced Information Systems Engineering.Stockholm:Springer- Verlag,2000:13—31. [4]HanYanbo,ZhaoZhuofeng,LiGang,et a1.CAFIS:AnApproachto Enabling Adaptive Configuration of Service Grid Applications[J]. Joumai of Computer Science nad Technology,2003,1 8(4):485. [5]唐宇,何凯涛,陈荦,等.空间信息栅格体系与服务聚合技 术[J]_国防科技大学学报,2005,27(2):46—51. [6]陶晓峰,孙健.基于面向对象Petri网的Web服务合成[J]_计 算机应用,2005,25(6):1424—1426. [7]Pahl C.A PiCalculus Based Framework for the Composiiton and Replacement of Components[EB/OL].(2001—01—09).hap:#www. CS.iasatte.deul ̄leavenslSAVCBSlpapers一2001/cover.pdf. [8]廖军,谭浩,刘锦德.基于Pi一演算的Web服务组合的描述 和验证[J]_计算机学报,2005,28(4):635.643. [9]Ponnekanti S R,Fox A.SWORD:A Developer Toolkit for Web Service Composition[EB/OL].(2002—10—22).http:fswig.stnaford. edu/pub/publications/sword/www1 1.pdf. [10]李曼,王大治,杜小勇,等.基于领域本体的Web服务动态 组合[J]_计算机学报,2005,28(4):644—650. 一8卜一 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo8.com 版权所有 湘ICP备2023022238号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务