[硕士论文精品]基于与或图的web服务组合方法研究_第1页
[硕士论文精品]基于与或图的web服务组合方法研究_第2页
[硕士论文精品]基于与或图的web服务组合方法研究_第3页
[硕士论文精品]基于与或图的web服务组合方法研究_第4页
[硕士论文精品]基于与或图的web服务组合方法研究_第5页
已阅读5页,还剩50页未读 继续免费阅读

[硕士论文精品]基于与或图的web服务组合方法研究.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要摘要当前,随着WEB服务技术及其相关标准的不断发展和完善,支撑WEB服务的企业级应用平台也不断成熟,越来越多的企业和商业组织参与到业务服务化的行列中来,使得越来越多的稳定易用的WEB服务在网络上共享。但是单个WEB服务的功能非常有限,同时用户对服务的要求越来越高,他们希望能够定制、生成满足自身需求的业务。因此,如何更加灵活、动态地把简单服务高效的组合以得到满足客户需求的复杂服务,是当前研究的热点和难点。目前的WEB组合方法大多可以分为三个大类1基于工作流的WEB服务组合方法;2基于人工智能规划的WEB服务自动组合方法;3基于图搜索的WEB服务自动组合方法。它们虽然在解决WEB服务组合问题方面都发挥了积极的作用,但同时也存在如下问题基于工作流的WEB服务组合方法需要较多的人工参与,自动化程度低,服务组合的效率不高;基于人工智能规划的WEB服务自动组合方法,其方法复杂度较高,不易实现;基于图搜索的WEB服务自动组合方法,不仅搜索空间大,而且存在重复或循环搜索等问题。本文围绕着WEB服务自动组合展开研究。提出了一种基于与或图的WEB服务自动组合方法的总体框架WSCFOAG,阐述了该框架包含的三个部分领域WEB服务库的抽象与语义标注,WEB服务组合方式的发现和构建,复合服务路径的WSDL语言还原描述。接着给出了与或图的定义及其相关性质的证明,在此基础上,提出了一种基于与或图的WEB服务组合算法AWSCOAG,该算法较好的解决了WEB服务组合方式的计算问题。其具体实现分为以下两个步聚1与或图的构造。针对WEB服务请求和相关领域WEB服务库构造实时的与或图,首先以WEB服务请求输出对象集合为虚拟根结点的子节点,接着向下扩展以这些子节点为输出对象的服务节点,然后再以这些服务节点的输入对象进行扩展,在此过程中对已存在节点只添加相应边,以此反复逐层进行,最终得到针对用户输出集的完备与或图。2与或图的搜索求解。将完备与或图中对用户请求没有供献的服务节点进行剪裁,得到净化与或图;再将净化与或图进行归约获取符合用户请求的WEB服务集;最后通过合成路径算法将服务集进行排序,得到具有时序逻辑的服务合成路径。与已有方法相比,该方法实现简单,搜索空间小,避免了重复搜索和循环搜索。仿真实验表明,该方法时间复杂度较好,能够在大规模的服务集中进行灵活、快速的服务组合。关键词与或图;WEB服务;服务组合;归约算法ABSTRACTABSTRACTTODAYWITHTHEDEVELOPMENTOFWEBSERVICETECHNIQUEANDRELEVANTSTANDARD,THECORPORATIONLEVELAPPLICATIONPLATFORMTHATSUPPORTSWEBSERVICEISBECOMINGCONTINUOUSLYMATUREMOREANDMORECORPORATIONANDCOMMERCIALORGANIZATIONSJOININTHERANGEOFBUSINESSSERVICES,SOMORESTABLEANDSIMPLEWEBSERVICEISSHAREDININTERNETBUTSINGLEWEBSERVICESFUNCTIONISVERYLIMITEDMOREOVER,CUSTOMERSDEMANDSBECOMEMOREANDMORECOMPLEX,ANDTHEYEVENIFHOPECALLFORCUSTOMIZEDSERVICETHATCANFITTHEIROWNSPECIALDEMANDSTHEREFORE,INRECENTYEARS,HOWTOPROVIDEMOREFLEXIBLEANDDYNAMICSERVICESTHATSUCCESSFULLYCOMPOSESIMPLESERVICESINAMOREEFFECTIVEWAYHASBECOMETHERESEARCHINGFOCUSTHECURRENTWEBCOMPOSITEMETHODCANBEDIVIDEDINTOTHREECLASSES1,WEBCOMPOSITEMETHODWHICHBASEDONWORKFLOW2,WEBSERVICEAUTOCOMPOSITEMETHODBASEDONAIPLANNING3,WEBSERVICEAUTOCOMPOSITEMETHODBASEDONGRAPHICSEARCHALTHOUGHTHEYHAVEBEENEXERTINGACTIVEEFFECTSINSOLVINGWEBSERVICECOMPOSITEPROBLEMS,THEYSTILLHAVESOMEWEAKNESSESFOREXAMPLE,THECOURSENEEDSMUCHLABORPARTICIPATIONANDINEFFICIENCYEXISTSINGRAPHSEARCHTHISPAPER,SMAINRESEARCHISABOUTTHEWEBSERVICE,ITPUTFORWARDTHEFRAMEWORKOFWEBSERVICECOMPOSITEMETHODNAMEDWSCFOAGBASEDONANDORGRAPHANDELABORATESTHREEPARTSOFTHEFRAMEWORKONEPARTISTHEABSTRACTDESCRIPTIONOFDOMAINDEPENDENTWEBSERVICELIBRARYANDSEMANTICANNOTATION;ANOTHERPARTISTHEDETECTANDBUILDINGOFTHEWEBCOMPOSITEPATH,THETHIRDPARTISABOUTWSDLLANGUAGERESTOREDESCRIPTIONOFCOMPOSITESERVICEPATHONTHEBASISLISTEDABOVE,WEPUTFORWARDANEWWEBSERVICECOMPOSITEARITHMETICBASEDONANDORGRAPHAWSCOAG,ITSOLVESTHEQUESTIONOFCALCULATIONABOUTWEBSERVICECOMPOSITEPATHITINCLUDESTWOSTEPS1,BUILDANDORGRAPHBUILDTHEANDORGRAPHAIMINGTOWEBSERVICEREQUIRESANDRELATEDWEBSERVICELIBRARIESFIRST,TAKETHEOUTPUTOBJECTSSETOFWEBSERVICEREQUESTSASTHEVIRTUALROOTNODESCHILDNODES,ANDTHENEXTENDDOWNTOTHECHILDNODEOBJECTASTHEOUTPUTSERVICENODE,ANDTHENTOTHESERVICENODETOEXTENDTHEINPUTOBJECTDURINGTHISPROCESSTHATHAVEBEENJUSTADDTHECORRESPONDINGEDGENODEEXISTS,REPEATTHISPROCESSFROMLAYERTOLAYER,FINALLYGETACOMPLETEANDORDIAGRAMFORUSERSOUTPUTSET2,RETRIEVEANDFINDTHESOLUTIONVIAANDORMAPCUTTHESERVICENODESTHATPROVIDENOUSEFULNESSTOUSERSREQUESTTIABSTRACTANDTHENODESRELEVENTEDGSTOGETASIMPLIFIEDANDORMAP;THENSIMPLIFIEDANDORGRAPHCANBEREDUCEDTOOBTAINCONSISTENTSETOFUSERREQUESTSFORWEBSERVICES;FINALLY,BYUSINGSYNTHESISPATHALGORITHMTOORDERTHEABOVESERVICESET,WECANGETTHEORDEREDSERVICESYNTHESISPATHFEATURESTIMINGLOGICCOMPAREDWITHEXISTINGMETHODS,THISMETHODISSIMPLEANDWITHSMALLERSEARCHSPACE,ITALSOAVOIDSDUPLICATIONOFSEARCHINGWITHINTHECYCLESEQUENCESSIMULATIONRESULTSSHOWTHATTHETIMECOMPLEXITYISLOWERED,WHICHMEANSITISABLETOFOCUSONFLEXIBLE,FASTSERVICEPORTFOLIOOFLARGESCALESERVICESKEYWORDSANDORGRAPH;WEBSERVICE;SERVICECOMPOSITION;REDUCTIONARITHMETICIII目录目录摘要IABSTRACTII目录I、,R第1章绪论一111研究背景112研究意义113研究内容214论文结构3第2章WEB服务与WEB组合相关理论及技术基础421WEB服务4211WEB服务定义及特点4212WEB服务的基本体系结构5213WEB服务技术协议栈722语义WEB服务8221语义WEB概述8222语义WEB服务概述923WEB服务组合1L231WEB服务组合的定义1L232WEB服务组合的目的及要解决的问题12233WEB服务组合的相关研究现状1224本章小结一16第3章基于与或图的WEB服务自动组合183IAWSCOAG的主要思想和框架18311AWSCOAG方法的主要思想18312总体框架1932服务组合问题的形式化描述2L33与或图的相关定义及其构造算法22331与或图的相关定义和性质22332与或图的构造算法25目录34与或图的相关性质及其求解算法27341与或图的裁剪27342与或图的归约29343合成路径一3235本章小结34第4章实验仿真及结果分析3541测试环境3542测试平台软件实现技术35421测试数据的生成方式35422测试软件平台的框架结构及其关键技术的实现3543测试结果及分析38431具有相同数量IO总数不同服务总数的仿真实验一38432相同服务总数不同IO总数的仿真实验40433相同比例的服务总数与10总数的仿真实验42434不同比值的等比例服务总数与IO总数的仿真实验4344本章小结43第5章总结与展望4551全文工作总结4552工作展望46致谢47参考文献。48个人简历。5LV第1章绪论11研究背景第L章绪论随着互联网技术的不断发展,越来越多的企业将其业务转移到互联网上来,而且这些业务之间的相互集成也正在快速的发展,但是由于其使用的开发平台不同、使用的编程语言不同等因素导致了这些业务之间无法相互沟通和合作,这对业务进行互操作和集成造成了很大的障碍。现有的网络体系结构中多种网络和多种技术共存的弊端日益明显,因此多种网络的互通与融合已成为当今网络发展的大趋势。人们试图利用分布式结构系统来解决业务在异构平台上交互操作的障碍,但大多数这类系统在企业范围内的部署上就有很大的缺陷,更不用说在更广泛的范围进行应用。在这种情况下,业界提出了SOAILJSERVICEORIENTEDARCHITECTURE,面向服务的体系架构,而WEB服务是其一种极具优势的支撑技术。现有的WEB服务使用一系列的基于XML2】语言的协议,有效地实现了异构环境下的跨平台软件之间的交互,如WSDL3JWEBSERVICESDESCRIPTIONLANGUAGE,WEB服务描述语言、UDDI4UNIVERSALDESCRIPTION,DISCOVERY,ANDINTEGRATION,统一描述发现集成、SOAP5】SIMPLEOBJECTACCESSPROTOCOL,简单对象访问协议等,这些都是用于实现WEB描述、发布、查找和调用的基础。由于WEB服务各项标准对应用所使用的操作系统和编程语言都没有同一性的要求,因此应用程序可以使用连接到INTERNET的任何类型设备所提供的WEB服务。WEB服务的主要目标就是提供一个与平台、语言无关的技术,使得各种异构平台上的应用程序能依靠这个技术来实现彼此的连接和集成。传统的WEB应用技术,解决的是人如何使用WEB应用所提供的服务,而WEB服务要解决的是如何使计算机系统自动使用由WEB应用所提供的服务。由此可见,WEB服务在企业应用的集成方面具有很大的优势。12研究意义随着互联网的发展,WEB服务受到越来越多人的关注。高度的互操作,跨平台和松耦合等特点使其受到广泛应用。WEB服务的接口是采用中立的方式进行定义的,独立于实现服务的硬件平台、操作系统和编程语言,这使得在该类型系统中构建的各种服务之间可以建立一个统一和通用的交互方式。随着WEB服务技术的不断发展和其相关标准的不断完善,以及支撑WEB服L第1章绪论务的企业级应用平台的不断成熟,越来越多的企业和商业组织参与到业务服务化的行列中来,越来越多的稳定易用的WEB服务在网络上共享。但网络中单个WEB服务的功能非常有限,而用户对服务的要求越来越高,甚至希望能够定制满足自身需求的业务。因此,如何灵活、动态地把简单的服务进行高效组合以得到满足客户需求的复杂服务是当前研究的热点和难点。如何将可以共享的WEB服务进行有机合成,得到大粒度并具有执行时序逻辑的组合服务【6】,已经成为当前具有广阔应用前景的研究方向。目前WEB服务组合问题引起了多个领域专家的广泛关注,很多学者从自身研究领域出发,提出了不同的WEB服务组合方法。这些方法基本可以分为三个大类1基于工作流的WEB服务组合方法【10】【11】【131;2基于人工智能规划的WEB服务自动组合方法37381;3基于图搜索的WEB服务自动组合方法【41】【42】【431。这些方法的具体研究内容将在第二章进行详细讨论,它们虽然在解决WEB服务组合问题方面都发挥了积极的作用,但同时也存在一些问题【L6】1基于工作流的服务组合方法需要大量的人工参与,无法处理灵活多变的业务流程。2基于人工智能理论的自动服务组合方法虽然人工干预较少,但该方法的复杂度较高,实现较为困难。3现有基于图搜索的服务自动组合方法往往存在搜索空间大,重复节点多,无法解决循环搜索等问题。综上所述,尽管目前在这方面已经开展了很多工作,也取得了很多相关成果,但同时也有所欠缺。WEB服务组合远非一个简单的问题,本文就解决这个问题进行一次有意义的尝试。13研究内容本文所做的研究工作包括1首先介绍了WEB服务与WEB服务组合的研究现状,然后比较全面地介绍了WEB服务体系结构、语义WEB服务、WEB服务组合的相关技术。2提出了一种基于与或图的WEB服务自动组合方法的总体框架WSCFOAGWEBSERVICESCOMPOSITIONFRAMEBASEDONORANDGRAPH,阐述了该框架包含的三个部分领域WEB服务库的抽象与语义标注;WEB服务自动组合模块;复合服务路径的WSDL语言还原描述。3针对WSCFOAG框架中的核心模块WEB服务组合模块,在给出与或图的相关定义,和相关性质证明的基础上,本文提出了一种基于与或图的WEB服务组合方法AWSCOAG,AUTOMATICWEBSERVICESCOMPOSITIONBASEDONORAND2第L章绪论GRAPH,该方法较好的解决了WEB服务组合方式的计算问题。其具体实现分为以下两个步聚与或图的构造针对WEB服务请求和相关领域WEB服务库构造实时的与或图,首先以WEB服务请求输出对象集合为虚拟根结点的子节点,接着向下扩展以这些子节点为输出对象的服务节点,然后再以这些服务节点的输入对象进行扩展,在此过程中对已存在节点只添加相应边,以此反复逐层进行,最终得到针对用户输出集的完备与或图。与或图的搜索求解将完备与或图中对用户请求没有贡献的服务节点进行剪裁,得到净化与或图;再将净化与或图进行归约获取符合用户请求的WEB服务集;最后通过合成路径算法将得到的服务集进行排序,得到具有时序逻辑的服务合成路径。与已有方法相比,该方法实现简单,搜索空间小,避免了重复搜索和循环序搜索。4为验证AWSCOAG方法的可行性和有效性,文中通过实例说明了该方法的执行过程,并通过仿真实验对该方法进行了分析和评价,仿真实验表明,该方法时间复杂度较好,能够在大规模的服务集中进行灵活、快速的自动服务组合。14论文结构论文分为五个章节第1章为绪论,阐述本文的研究背景,对WEB服务自动组合的研究意义进行了分析和总结,并概括了本文的主要研究内容。第2章为技术基础,对本文所涉及的相关技术理论和技术基础进行了阐述,主要对WEB服务、语义WEB服务和WEB服务自动组合的相关理论和技术做了详细的论述。第3章针对WEB服务自动组合问题,在给出一个服务组合的基本思想和整体框架WSCFOAG的基础上着重说明了基于与或图的WEB服务自动组合方法AWSCOAG的具体实现,给出了与或图的相关定义,及相关性质证明,在此基础上,提出了与或图的构造算法和搜索算法,同时进行了实例分析。这一章是整个文章的核心章节。第4章通过仿真实验验证基于与或图的WEB服务自动组合方法的有效性和执行效率,对其在不同服务规模下组合成功率和组合效率进行了实验验证并作出了相应的分析。第5章对全文工作进行了总结,概述了论文工作的主要贡献,并对未来进一步的研究做出了规划。3第2章WEB服务与WEB组合相关理论及技术基础第2章WEB服务与WEB组合相关理论及技术基础WEB服务定义了一种在互联网应用方面共享数据和功能的有效手段,较好地解决了异构系统之间的互操作、集成和协作等问题。21W曲服务随着互联网的高速发展,WEB服务成为了一个热门技术,业界各个开发商都在自己解决方案中加入了大量的WEB服务技术。在WEB服务以前,处于不同平台,使用不同对象技术的CORBA、DCOM、EJB构架都不能够去除平台和实现的差异,因而相互之间的互操作性很差。而WEB服务标准的出现解决了这个问题。具有良好的互操作性是WEB服务的优势,它可以使某个平台上用一种语言编写的应用程序被另一个完全不同的平台上以完全不同的语言编写的应用程序调用。WEB服务的技术基础是已被业界广泛接受和使用的开放标准HTTP和XML,它采用的XMLSCHEMA、SOAP51、WSDL31和UDDI4】等基础协议都完全基于XML这个新一代的INTERNET基础技术。可以说WEB服务的所有技术协议都遵循着一个共同的原则继承原来被广泛接受的技术而不是创造一个新的体系,因此WEB服务能在短时问内被广泛地接受,并成为下一代互联网分布式计算的基本组成单元。211WEB服务定义及特点可以从两个方面来对WEB服务进行定义从技术方面讲,WEB服务是种通过一组标准的WEB协议提供服务的面向服务架构技术,这使得应用程序之间能以与平台和编程语言无关的方式进行交互。从功能角度来讲,WEB服务是一种新型的WEB应用程序,具有自我包含、自我描述、独立性以及模块化的特点,能够在WEB上被描述、发布、查找和调用。W3CWEBSERVICESARCHITECTURE小组对WEB服务的定义是【20】“WEB服务是由URL标识的软件应用程序,其接口和绑定可以通过XML构件进行定义、描述和发现,WEB服务支持通过基于因特网的协议使用基于XML的消息与其他件应用程序直接交互。”与传统EJB、CORBA、DCOM等技术相比,WEB服务技术具有以下特点1完好封装性。WEB服务实际上是对应用程序的一些功能提供接口,从而4第2章WEB服务与WEB组合相关理论及技术基础让其他程序通过WEB服务访问这些功能。2松散耦合性。采用WEB服务技术后,使用者只用在运行的时候动态的获取WEB服务地址,进行绑定和调用服务。只要服务调用的界面不变,使用者对WEB服务实现的任何变更都是未知的。这种松散耦合的关系提高了WEB服务系统的灵活性和可扩展性。3规范性。这个性质主要体现在两个方面第一使用协约的规范性,WEB服务使用标准的描述语言来描述,并且将描述文档通过UDDI协议存储在私有或公共注册库里面,使用服务质量QOS保障机制区分功能相同的服务,此外在整个过程还有安全机制的保障,这些都具有同样的规范性,以使得整个系统是协调和完善的。第二,标准协议使用规范性,WEB服务的所有公共的协约都使用开放的标准协议进行描述、传输和交换。4简单性。WEB服务所采用的描述语言WSDL、通信协议SOAP、服务发现集成协议UDDI等都是基于XML的协议,它们的设计原则中最重要的一点就是力求简单,因而WEB服务的相关技术都易于用户理解,并且开发者可以利用来自IBM和微软等供应商提供的免费工具箱快速的创建和部署WEB服务。这种简单性使得WEB服务比传统的实现技术更加简单高效,更便于开发者设计、开发、集成和维护业务系统。5高度可集成性。WEB服务所采用的服务界面和协议描述的规范协议都是基于XML标准,这使得其可以完全屏蔽不同平台的差异,任何设备,只要支持这些技术就都可以集成和访问这些服务。并且使用这些协议也能够高度地集成用CORBA、DOCM、EJB等不同技术实现的组件。6开放性和行业支持。WEB服务建立了基于XML的协议族和技术规范,得到业界的广泛支持。大型软件公司如IBM、微软、HP等都提供让开发者能快速创建和部署WEB服务的免费工具。212WEB服务的基本体系结构WEB服务主要采用的是SOA面向服务的体系结构,通过WEB服务提供者、WEB服务请求者、WEB服务注册中心三种角色之问的发布、发现、绑定三个基本操作所构建。5第2章WEB服务与W曲组合相关理论及技术基础图21WEB服务的体系结构如图21所示,WEB服务体系结构中共有三种角色【20】1服务提供者SERVICEPROVIDER,在一个应用服务器上创建一个WEB服务,并通过WSDL描述服务和接口信息,将其发布到服务注册中心。2服务请求者SERVICEREQUESTER,使用本地查找或服务注册中心检索服务的方式来获得所需要的WEB服务信息,然后与服务提供者提供的服务进行绑定,在运行过程中调用服务,期间与服务提供者通过SOAP协议进行交互。3服务注册中心SERVICEREGISTRY,在这上有一个运行的UDDI注册器,包含储存服务描述信息的信息库。服务提供者通过注册器在此发布PUBLISH他们的服务及其它格外的信息如地址,联系方式以及服务的技术细节等,服务请求者信息库中查找FIND服务,并获取服务的绑定BIND信息。可以说这是服务发布者和服务请求者的一个信息交互平台。要利用WEB服务的应用程序,必须在WEB服务体系结构中的三种角色之间发生以下三个操作发布服务描述、查找服务描述和根据服务描述绑定或调用服务。这些操作具体描述如下1发布PUBLISH为了使服务请求者可以发现和调用服务,服务提供者必须要发布服务描述。2查找FIND查找操作可能发生在两个阶段在设计阶段,服务请求者检索服务的接口描述以便于程序开发;在运行阶段,服务请求者检索服务的绑定和位置描述以方便之后的绑定和调用操作。3绑定BIND查询找到所需的服务描述之后,服务请求者需要通过绑定操作来调用服务。在绑定的操作过程中,服务请求者利用查找到的绑定细节来联系、定位和调用服务。6第2章WEB服务与WEB组合相关理论及技术基础213WEB服务技术协议栈WEB服务的技术协议栈描述了WEB服务的结构,与其它的协议栈相似,栈中的协议是一层层垒起来的,下层为上层提供服务,上层是建立在下层的基础之上,可调用下层完成本层的功能。栈中的一系列标准和协议都是为了实现WEB服务的相关功能,使其成为一个完整可实现的技术。如图22所示XMLEXTENSIBLEMARKUPLANGUAGE,可扩展标记语言是WEB服务各种协议的基础;SOAPSIMPLEOBJECTACCESSPROTOCOL简单对象访问协议主要用于在服务提供者和服务请求者之间传送各种请求和应答数据;服务提供者使用WSDLWEBSERVICESDESCRIPTIONLANGUAGE,WEB服务描述语言语言对自己的WEB服务进行描述,以提供给潜在的服务请求者使用;UDDIUNIVERSALDESCRIPTION,DISCOVERANDINTEGRATION,统一描述发现和集成,UDDI是服务提供者和请求者的交流中心,服务提供者将自己的服务注册到UDDI服务器中,服务请求者在服务器中查询所需的服务;WSBPELBUSINESSPROCESSEXECUTIONLANGUAGEFORWEBSERVICES,WEB服务的业务流程执行语言将多个WEB服务组装成完整的业务流程。图22所示是一个概念性的WEB服务技术协议栈。该协议栈有五个关键层服务传输层TRANSPORT、服务消息层MESSAGING、服务描述层DESCRIPTION、服务发布和发现层DISCOVERY和过程层PROCESSES。过程层WSBPEL协同组合服务发布和发现层UDDI杏洵,发布田安服务描述层WSDL服全管语法,语义,描述务保理质密目服务消息层SOAP里文件交换远程调用HTTPFTP服务传输层SMTP图22WEB服务协议栈1服务传输层TRANSPORT。这一组规范定义了在WEB服务之间传送原始数据的核心通信机制,主要是由现有网络协议组成,其中包括HTTP,SMTP和FTP等等,这一系列的协议帮助应用程序实现了对网络中WEB服务的访问。2服务消息层MESSAGING,这一层的协议定义了消息的格式,实现了WEB服务之间的交互。在这一层里几乎全部是以SOAP为协议的。在分布式、非集中7第2章WEB服务与WEB组合相关理论及技术基础环境中,SOAP以XML形式提供了一个轻量级的交换信息的机制。它是独立于编程语言、对象模型、操作系统和平台的,在INTEMET上发送消息和进行远程过程调用的标准。3服务描述层DESCRIPTION该层协议主要采用服务接口的方式来对WEB服务的功能、操作数据类型和绑定信息进行描述,将WEB服务进行封装,这一层主要使用WSDL作为信息描述语言。4服务发布和发现层DISCOVERY此层的协议用于发布和查找WEB服务,它使WEB服务的使用范围得到了进一步的扩展。通过由这层提供的发布功能,服务提供者可以把服务描述存储在一个服务注册中心;同时服务请求者可以以存储的服务描述为依据,查询服务注册中心以查找感兴趣的服务。UDDI是目前使用最广泛的注册中心。5过程层或服务组装层PROCESSES此层的协议支持WEB服务之间更复杂的交互,使得功能复杂的WEB服务可以用功能单一的WEB服务组合而成,这些被组装起来的WEB服务之间有一定时序性,体现了一定的业务流程。图22右边三个纵向协议QOSWEB服务质量和MANAGEMENT管理贯穿了整个WEB服务生命周期。SECURITYPRIVACY安全保密协议用于保证WEB服务为外部用户提供访问时内部系统和数据库的安全性和重要数据的保密性。QOS可以用来帮助用户从相似功能的WEB服务中选择符合自己质量要求的服务,QOS一般包括对服务访问能力、完整性和费用等要素。MANAGEMENT是指对WEB服务质量的运用进行控制和监控,与WEB服务的质量有紧密联系。22语义WEB服务现有的WEB服务缺少语义描述机制,导致计算机无法准确地理解并应用WEB服务的功能,并且对WEB服务组合的精确性也造成了很大的影响。而将语义WEB和WEB服务组合起来为这些问题的解决提供了新的途径。221语义WEB概述现有的互联网的实质是一个URIUNIFORMRESOURCEIDENTIFIER,统一资源标识符空间,在这个空间中一个URI可以不加限制和说明的连接到另一个URI上,形成了一个相对于人来说无限大的网络空间。随着、B上数据无限上升,人们逐渐淹没在数据的海洋中,很难找到真正想要的信息,而且机器也无法帮助人们准确找到和处理所需的信息。为了解决这个问题,TIMBERNERLEE提出了MACHINEUNDERSTANDABLEINFORMATIONSEMANTICWEB。语义WEB是对现有WEB的第2章WEB服务与WEB组合相关理论及技术基础扩展,它使WEB上的信息拥有明确定义的语义,而这种语义能便于计算机的理解,使计算机能够帮助人们准确找到和处理所需的信息。语义WEB的发明人蒂姆伯纳斯李提出了语义WEB的一种层次化结构【221,如图23所示语义网的分层架信托层构L证明层LI逻辑层数L规则层字签L本体层名ILMFRDFSCHEMAXML名词空间XMI,SCHEMAIUNICODELURI图23语义WEB的层次化结构体系下面是对各层的描述1URIUNIFORMRESOURCEIDENTIFIERS作为一种资源标识机制,提供了对资源的标准化的名字描述。2XMLEXTENSIBLEMARKUPLANGUAGE对数据的结构化描述方式进行了定义,是数据进行互操作的语法基础,可以看作是语法层。其中的NAMESPACE机制将名字进行分类,使得同名但含义不同的资源能够在一起使用。3RDFRESOURCEDESCRIPTIONFRAMEWORK定义了描述资源以及陈述事实的基本方式主语、谓语、宾语的三元组,它是描述数据语义的基础。4本体层ONTOLOGY为语义WEB提供了语义级共享概念模型的明确形式化规范说明,它是语义WEB实现的关键所在。5规则层RULES定义了本体推理所要遵循的规则。6逻辑层LOGIC在本体所描述信息的基础之上,根据规则提供智能推理。7证明层PROOF基于对事实的逻辑描述,提供对复杂事实的“证明”。8信托层TRUST采用加密技术或是数字签名技术,给人和计算机提供判断某一陈述是否可信的依据。222语义WEB服务概述现有的WEB服务缺少语义描述机制,导致计算机无法准确地理解并应用WEB9第2章WEB服务与WEB组合相关理论及技术基础服务的功能,并且对WEB服务组合的性能也造成了很大的影响。而将语义WEB和WEB服务组合起来为这些问题的解决提供了新的途径。如图24所示动态性增强易于机器理解图24WEB服务的发展趋势语义WEB服务SEMANTICWETSERVICES的概念最早由MCLLRAITH等人提出221,语义WEB服务由语义WEB和WEB服务有机结合而成,语义WEB服务的目标是通过对WEB服务的语义描述使计算机能和人一样都够理解和使用WEB服务,并实现WEB服务的自动检索、动态匹配、自动组合、组装、调用监控和互操作等。目前,在语义WEB服务的研究方面,具有较大影响力的代表性的工作包括OWLS【231、WSMOWSML241、SWSOSWSL25】和WSDLS【26】。1OWLSWEBONTOLOGYLANGUAGEFORSERVICESOWLS的前身是DAMLS,是在OWL27,281THEWEBONTOLOGYLANGUAGE,本体论描述语言的基础上提出的WEB服务本体,OWLS将WEB服务分为三个上层本体来进行描述。SERVICEPROFILE,用来对服务的基本信息进行描述,包括对服务提供者、服务功能和功能性属性组成等的信息描述,其中服务功能信息包括IOPEINPUT、OUPUT、PRECONDITION、EFFECT,即输入、输出、前提条件和影响。SERVICEPROFILE具有双向性即可以用于服务提供者描述服务的功能,又可能用于服务请求者描述所需服务。这样就可以在服务发现阶段利用双方的PROFILE描述信息进行双向匹配。SERVICEMODEL,用来描述服务的过程模型,即与服务执行相关的内部流程,其中包括对三类过程类型的描述ATOMICPROCESS原子过程、ABSTRACTPROCESS简单过程和COMPOSITEPROCESS组合过程。SERVICEGROUNDING,用于对服务的访问细节进行描述,包括该服务所使用的相关协议、消息格式和寻址等。2WSMOWSMLWEBSERVICEMODELINGONTOLOGYLANGUAGE是在欧洲委员会和爱尔兰科学基金等多个组织资助下,在前期WSMFWEBSERVICEMODELINGFRAMEWORK的工作基础上提出的,用于描述语义WEB服务的本体和描述语言。10第2章W曲服务与WEB组合相关理论及技术基础WSMOWSML从ONTOLOGY本体、W曲SERVICEWEB服务、GOAL目标和MEDIATOR中介器这四个方面描述语义WEB服务。ONTOLOGY,定义了信息的形式化语义,关联了机器和人之间的术语。WEBSERVICE,提供了功能属性、非功能属性和行为这三个方面的描述。GOAL,用于说明一个用户请求WEB服务时可能具有的目的,描述了用户请求的相关方面所需的功能和行为。MEDIATOR是MSMO中的核心要素,主要用于解决不同组件之间在交互时发生的数据、协议和过程的不兼容问题。MSMO中主要有四种MEDIATOR,GGMEDIATOR连接两个目标的中介器、OOMEDIATOR连接两个本体的中介器、WWMEDIATOR连接两个服务的中介器和WGMEDIATOR连接服务和目标。3SWSOSWSLSEMANTICWEBSERVICESONTOLOGYLANGUAGE是DAML语义WEB服务语言委员会在OWLST和WSMOWSML的基础上,发布的WEB服务本体和本体描述语言。其中SWSO提出了一套描述WEB服务的概念模型以及模型的公理体系,它包括两种形式的WEB服务本体ROWSRULESONTOLOGYFORWEBSERVICES,WEB服务规则本体和FLOWSFIRSTORDERLOGICONTOLOGYFORWEBSERVICES,一阶逻辑本体。SWSL是用来对WEB服务概念的正式特征和单个服务进行描述的本体描述语言。SWSL包含了两个子语言SWSLRULES和SWSLFOL前者是基于规则的本体描述语言,而后者是基于一阶逻辑的本体描述语言。4WSDLSWEBSERVICESDESCRIPTIONLANGUAGESEMANTIC是由美国乔治亚大学和IBM扩展标准的WSDL而得到的一个基于本体的WEB服务描述语言。WSDLS通过对WSDL中的核心元素增加语义本体信息的方式来实现服务的语义描述。WSDLS对WEB服务进行语义描述时可以采用不同的本体语言。并且由于WSDLS是在WSDL的基础之上扩展得到的,因此更容易得到业界的认同并在现有的应用系统中得到应用。23WEB服务组合231WEB服务组合的定义可以从多个角度对WEB服务组合的定义进行阐释,从“粒度”变化的角度讲,WEB服务合成是将相对简单的小粒度WEB服务进行组合封装,并将封装后的服务作为一个更为复杂、粒度更大的服务提供给用户的一种技术;从“时序”的角度来讲,WEB服务组合就是查找能满足用户需求的多个WEB服务,并按一定的时序顺序进行调用的一种调用机制;从企业功能的角度来讲,WEB服务组合是企业将来源于不同单位功能简单的服务集成起来,为客户提供一个功能更加强大的增值服务的能力。第2章WEB服务与WEB组合相关理论及技术基础总的来讲,WEB服务组合61是指在单个WEB服务无法满足用户需求时,将若干WEB服务进行有机组合,形成大粒度具有内部流程逻辑的组合服务,并执行组合服务以达到业务目标的过程。232WEB服务组合的目的及要解决的问题当单个WEB服务不能满足用户的需求时,就必须对WEB服务进行组合和集成,形成大粒度的服务以提供复杂的功能。总的来说WEB服务组合的目的主要有一下几点1提高服务重用性。当现有的WEB服务不能满足用户需求的时候,可以利用现有的WEB服务进行组合得到满足用户应用需求的复杂服务,而不是按用户的应用需求去开发新的WEB服务。2提高企业开发效率。由于WEB组合技术可以组合现有的服务,这样使得企业可以大大加快开发速度,缩短开发周期,降低企业成本。3提高用户的满意度。单个服务往往实现的功能也比较单一,而用户的需求往往都是多方位的,通过WEB服务组合可以将多个单一功能的服务复合成为满足用户需求的服务。在复杂的网络环境中要将WEB服务进行组合必须满足一定的要求,而这些要求也是WEB服务组合的研究所要解决的问题,它们主要包括1对于复杂多变的WEB服务群,怎样发现能够解决用户需求的相关WEB服务。2对于与满足用户需求相关的WEB服务,如何确定它们之间的逻辑及时序关系,以实现复杂WEB服务执行的自动化。3如何形式化表示WEB服务的描述,并解决服务描述中的异名同意和同名异意的问题。除了以上3个与WEB服务组合密切相关的问题外,还有如何实现复合服务的安全控制和事务处理;如何实现复合服务的质量控制,以及如何验证和测试复合服务的正确性等方面的问题也是WEB服务研究所要解决的相关问题。233WEB服务组合的相关研究现状本节主要介绍服务组合方法的研究现状,将目前出现的研究方法归纳为三类1基于工作流的WEB服务组合方法;2基于人工智能规划的WEB服务自动组合方法;3基于图搜索的WEB服务自动组合方法。下面对每类方法以及目前的一些研究情况作出简单介绍。12第2章WEB服务与WEB组合相关理论及技术基础2331基于工作流的W曲服务组合方法服务组合的过程与经典的工作流有很大的相似性,都是一系列相互衔接、自动进行的业务活动或服务。基于工作流【33】的组合方法把WEB服务组合看成是构建在一组静态或动态的组合服务之上的业务流程WEB服务执行的某个操作相当于工作流中的活动;多个WEB服务之间的时序关系相当于工作流中用控制流描述的活动之间的依赖关系;而WEB服务组件之间的数据交换关系相当于工作流中的数据流所描述的活动之间的数据传递。因为服务组合过程和工作流的这些相似性,所以基于工作流的服务组合方法是一种很自然的选择。在业界早期的服务组合研究当中有很多都属于这类方法,最具代表性的研究包括国外的EFLOW、SELFSERV和METEORS项目以及国内的FLAME2008平台。EFLOW9,10】是HP实验室开发的一个基于工作流,用于集成不同的异构WEB服务,并利用复合服务完成复杂事务处理的服务组合平台。EFLOW在扩展工作流的基本概念和模型的基础上提出了SCMSERVICECOMPOSITIONMODEL服务组合模型和CSDLCOMPOSITESERVICEDESCRIPTIONLANGUAGE服务组合定义语言。SCM以动态更新图的方式对组合服务建模。图包含服务节点、判断节点和事件节点服务节点代表执行一个原子服务或者一个组合服务;判断节点指定了执行流程的变更和控制规则;事件节点使得服务流程收发不同类型事件;图中的边表示节点之间执行的依赖性。服务节点的定义中包含了一个服务选择规则,可以在流程实例化时或者运行时查询具体的服务,由此可见EFLOW系统增加了服务组合流程的柔性增强了对业务变化的应对能力。但是EFLOW在运行前就将服务流程固定,欠缺动态性和灵活性。SELFSERV13,14】是澳大利亚新南威尔士大学和昆士兰大学合作研制的一个WEB服务组合平台。其研究目的在于实现快速的开发和执行WEB服务组合。SELFSERV将服务按照粒度分为三种基本服务、组合服务和社区服务,其中社区服务为一类有相同功能和接口的服务集合。SELFSERV使用STATECHART状态图进行服务组合建模,其中每个状态表示一次服务的调用,使用ECAEVENTCONDITIONACTION,事件一条件一活动规则的业务过程描述方法。在指定状态时可以指定社区服务,以实现运行时服务的动态选择。METEORS【1112】项目是由美国乔治亚大学LSDIS大规模分布式信息系统实验室承担的服务综合管理项目。该项目旨在运用工作流、语义WEB、WEB服务这三种技术来解决语义WEB服务的描述、发现、组合和执行问题。METEORS包含MWSDIMETEORSWEBSERVICEDISCOVERYINFRASTRUCTURE,服务发现基础构架LJ和MWSCFMETEORSWEBSERVICECOMPOSITIONFRAMEWORK,服务组合框架12】两大模块。NWSDI主要是对标准WEB服务接口、功能等参数进行第2章WEB服务与WEB组合相关理论及技术基础了语义支持。MWSCF提出了SEMANTICWEBPROCESS语义WEB流程概念,将服务组合分为两个步骤,先用语义服务模板定义抽象的服务流程,然后再在执行的时候利用本体论推理进行服务匹配。该方法在执行前需要完成抽象流程到可执行的BPEL流程的转换,因此它的动态性不足以应付变化的WEB服务环境。综上所述基于工作流的服务组合方法基本都有如下的问题1需要较多的人工参与,自动化程度不高。服务组合的流程模型大多依靠领域专家的经验设计,使得在服务组合的过程中需要大量的人工参与,而要用人工的方法从数量巨大的WEB服务中找到与模型中的每一个活动匹配的WEB服务是极不现实的。2该方法没有较好的灵活性、动态性,对异常的应变能力也较差。基于工作流的服务组合方法的服务流程在建模的时候已经确定,有些甚至在建模的时候就对服务进行了绑定,这使得服务组合失去了动态性,不能应对网络中复杂多变的情况,这主要体现在两个方面可能无法在网络中找到已确定的服务流程所对应的服务事实体,以至到执行时无法正常运行;并且如果绑定好的某个服务不能用,也会致使整个服务组合不能用。无法根据现有的服务采用最好的服务流程;也无法实现服务的最佳匹配选择。2332基于人工智能规划的W曲服务组合方法服务组合问题的研究不仅吸引了从事流程管理方面的专家,同时也吸引了大批来自人工智能领域的专家【341,他们认为服务组合问题可以被视为一个可以自动求解的规划问题,即在给定一个初始状态和目标状态的情况下,如何在一个服务集合中寻求一条从初始状态到目标状态路径的问题P引。基于人工智能规划的WEB服务组合方法有很多种,包括基于情景演算、基于规则、基于HTNHIERARCHICALTASKNETWORK层次任务网等人工智能方法。下面选择代表性的研究加以介绍。1GOLOG是建立在情景演算上的一种高级逻辑编程语言,它支持动态系统中复杂行动的指定和执行,并提供了一组逻辑构造符,用于将情景演算中定义的原子动作组合成复杂动作,完成对问题的描述和推理。而WEB服务与其定义中的动作有一定的相似性,每一个服务可以看作一个原子行动或者复杂行动,复杂行动是多个原子行动的组合。一个复合WEB服务是一系列通过过程编程语言符号连接的原子WEB服务集合。MCILRAITH和SON在文献36提出了GOLOG的特性非常适合表示组合服务和用户的目标任务,并对GOLOG进行了加强。美国斯坦福大学研究开发了一种基于人工智能规划等多种技术,并采用基于GOLOG语言的自动组合WEB服务系统1371。2SWORD38】是由美国斯坦福大学SWIG研究小组开发的一种基于规则的14第2章WEB服务与WEB组合相关理论及技术基础专家系统进行WEB服务组合的开发工具。在SWORD中,采

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论