




已阅读5页,还剩51页未读, 继续免费阅读
(计算机系统结构专业论文)语义web服务组合及其支撑环境的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 w e bs e r v i c e s 作为一种新的应用模式及远程访问标准,很好地解决了异构平台上数 据的应用和整合。它利用开放标准( w s d l ,u d d i ,s o a p ) 把不同组织开发的软件实体 以服务的形式加以使用,并且可以把已有的服务进行服务组织编排,以完成更复杂的业 务功能,因此,如何组合w e bs e r v i c e s 以提供更有价值的“组合服务”成为目前研究的热 点和重点。w s b p e l2 0 是一种基于x m l 的语言,目前已经成为服务组合语言的事实 标准。它具有高互操作性、跨平台和松耦合的特点,但对服务的描述仅限于语言层级, 不能表达语义信息,且该标准没有提供任何手段来监控w e b 服务的q o s 。 本文对于采用b p e l 进行服务组合进行了深入的研究。为了解决b p e l 只能进行静 态服务组合、不带语义、缺少q o s 支持的缺点,引入了o w l s ,用它来描述w e b 服务 属性和功能,并扩展了q o s 属性,提出了一种基于本体和q o s 的三级服务匹配算法。 该算法用服务轮廓、服务的输入输出和q o s 进行服务匹配,在保证准确度的前提下大大 提高了服务匹配的速度;针对目前存在的服务请求不容易找到合适服务的状况,提出了 一种递归反向搜索链算法。该算法可以进行语义转化,在已有的服务中进行推理,尽力 构造出满足需求的服务链以代替目标服务。 a p a c h eo d e 是一款开源工作流引擎,它支持业界标准w s b p e l2 0 ,同时兼容老 的b p e l 4 w s1 1 标准,但它只能被动地执行用b p e l 语言描述的业务流程,不能主动 发现服务而且缺乏对语义的支持。o w l s 可以描述w e b 服务语义,从而进行语义w e b 服务的自动推理、组合和执行。本文为a p a c h eo d e 扩展了语义匹配代理,在a p a c h eo d e 基础上实现动态、带语义的w e b 服务组合支撑环境,最后通过原型系统的运行实验证 明了本文的工作是可行的和有效的。 关键词:o w l s ,w s b p e l ,语义w e b 服务,a p a c h eo d e ,服务组合 a b s t r a c t w e bs e r v i c e sa sa ne m e r g i n gm o d e lo fa p p l i c a t i o n sa n dr e m o t ea c c e s ss t a n d a r d si s b e c o m i n gag o o ds o l u t i o nt ot h ea p p l i c a t i o na n di n t e g r a t i o no fd a t aa c r o s sd i f f e r e n tp l a t f o r m s i tc a ni n t e g r a t es o f t w a r et h a td e v e l o p e db yd e f e r e n to r g a n i z a t i o n si n t os e r v i c e sb yu s i n go p e n s t a n d a r d ss u c ha sw s d l ,u d d ia n ds o a p m o r ei m p o r t a n t l y , i tc o u l do r g a n i z et h ee x i s t e n t s e r v i c e st oa c h i e v em o r ec o m p l e xb u s i n e s sf u n c t i o n s ,s oi th a sb e c o m et h ef o c u so fc u r r e n t r e s e a r c ha n dh o t s p o to nh o wt oc o m p o s ew e bs e r v i c e st op r o v i d em o r ev a l u a b l e ”c o m p o s i t e s e r v i c e ”w s - b p e l2 0i sa nx m l b a s e dl a n g u a g ea n dh a sb e c o m et h ea c t u a ls t a n d a r do f s e r v i c ec o m p o s i t i o nl a n g u a g e i th a sa h i g hi n t e r o p e r a b i l i t y , c r o s s p l a t f o r m a n dt h e c h a r a c t e r i s t i c so fl o o s e l yc o u p l e d a si t ss e r v i c e sd e s c r i p t i o nc a p a b i l i t yi sl i m i t e di nt h e l a n g u a g el e v e l ,s oi tc o u l dn o te x p r e s st h es e m a n t i ci n f o r m a t i o na n dd o e s n tp r o v i d ea n y m e a n st om o n i t o rt h eq o so ft h ew e bs e r v i c e s i nt h i sp a p e r , h o wt od ot h eb p e lc o m p o s e ds e r v i c e si s a n a l y z e d i nd e t a i l t h e a d a p t a t i o no fb p e lt oc o m p o s i t ew e bs e r v i c e sl a c k sd y n a m i c i t y , s e m a n t i c s ,a n dm o n i t o r i n g o ft h eq o s i no r d e rt os o l v et h e s ep r o b l e m s ,w ei n t r o d u c et h eo w l - sa n de x t e n di tw i t hq o s a t t r i b u t et od e s c r i b et h ea t t r i b u t ea n df u n c t i o n so fw e bs e r v i c e s a no n t o l o g y - b a s e d t h r e e s t a g em a t c h i n ga l g o r i t h mi sp r o p o s e da sw e l l t h ea l g o r i t h mc a nm a t c hs e r v i c eb yu s i n g t h es e r v i c ep r o f i l e ,q o s ,a n di n p u ta n do u t p u to ft h es e r v i c e i tg r e a t l ye n h a n c e st h es p e e do f m a t c h i n gs e r v i c eu n d e rt h ep r e m i s eo fe n s u r i n gp r e c i s i o n ;a c c o r d i n gt ot h ef a c t t h a tt h e r e q u e s t e ds e r v i c ei sn o te a s yt of i n dt h ea p p r o p r i a t es e r v i c e ,ar e c u r s i o n b a s e dr e v e r s es e a r c h c h a i na l g o r i t h mi sp r o p o s e d t h ea l g o r i t h mc a nb eu s e dt ot r a n s f o r ms e m a n t i c ,d or e a s o n i n g i nt h ee x i s t i n gs e r v i c e sa n dc o n s t r u c tt h es a t i s f a c t o r ys e r v i c ec h a i nw h e nt h ee x p e c t e ds e r v i c e c a nn o tb ef o u n d a p a c h eo d ei sa no p e n - s o u r c ew o r k f l o we n g i n e ;i tc a nh o l dt h ei n d u s t r y - s t a n d a r d w s - b p e l2 0c o m p a t i b l ew i t ht h e o l ds t a n d a r db p e l 4 w s1 1 i tc a no n l y p a s s i v e l y i m p l e m e n tt h eb u s i n e s sp r o c e s sd e s c r i b e db yt h eb p e la n dc a nn o t f i n dt h es e r v i c e i n i t i a t i v e l y i ta l s ol a c k st h es u p p o r to fs e m a n t i c o w l sc a nd e s c r i b et h es e m a n t i co ft h e w e bs e r v i c e sa n dc a nd os e r v i c er e a s o n i n g ,c o m p o s i t i o na n de x e c u t i o na u t o m a t i c a l l y i nt h i s p a p e r , t h es e m a n t i cm a t c h i n gp r o x yf o ra p a c h eo d e i se x t e n d e d t h ed e s i g n e ds y s t e mc a nd o s e r v i c e c o m p o s i t i o nd y n a m i c a l l y a n d s e m a n t i c a l l y f i n a l l y , ap r o t o t y p es y s t e m i s i m p l e m e n t e da n du pr u ni nt h el a bt op r o v et h a tt h ew o r ko ft h i sp a p e ri s f e a s i b l ea n d e f f e c t i v e k e yw o r d s :o w l s ,w s - b p e l ,s e m a n t i cw e bs e r v i c e ,a p a c h eo d e ,s e r v i c ec o m p o s i t i o n 西北大学学位论文知识产权声明书 本人完全了解西北大学关于收集、保存、使用学位论文的规定。 学校有权保留并向国家有关部门或机构送交论文的复印件和电子版。 本人允许论文被查阅和借阅。本人授权西北大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。同时授权中国科学技术信息研 究所等机构将本学位论文收录到中国学位论文全文数据库或其它 相关数据库。 西北大学学位论文独创性声明 本人声明:所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,本论文不包含其它人已经发表或撰写过的研究成果,也不包含 为获得西北大学或其它教育机构的学位或证书而使用过的材料。与我 一同工作的同志对本研究所做的任何贡献均己在论文中作了明确的 说明并表示谢意。 学位论文作者签名:砖岗 力哆年万月z 钼 西北人学硕 :学位论文 1 1 研究背景和意义 第一章绪论弟一早珀t 匕 如何灵活的进行企业应用集成一直是工作流领域的核心问题,w e bs e r v i c e s 技术的 出现,给企业应用集成带来了新的发展。伴随着s o a 理念和技术的逐步成熟,企业应 用集成开始转向以服务为中心的集成,然而,目前的w e bs e r v i c e s 就像是互联网上孤 立的程序单元,不能很好地融合起来。在这样的背景下,如何进行w e bs e r v i c e s 的集成, 继而形成更加灵活的企业分布式应用系统已经成为w e bs e r v i c e s 发展所面临的一个重要 问题。为了解决这一问题,出现了b p e l 4 w s1 1 并在此基础上推出了w s b p e l2 0 , 这两个规范是i b m 的w s f l 和m i c r o s o f t 的x l a n g 相结合的产物。w s f l 和x l a n g 分别基于p e t r i 网和p i 演算,因此b p e l 吸收和借鉴p e t r i 网和p i 一演算的优点,它是一 种高级、抽象、可执行的建模语言,不仅能实现w e b 服务间的交互和流程编排,还能 将流程自身暴露为w e b 服务。b p e l 充分体现了w e bs e r v i c e s 集成的思想,将不同的 w e bs e r v i c e s 按照指定的业务需求联系起来,创建一个更复杂的业务流程,从而实现出 更强大的业务功能。由于i b m 在s o a 领域的领先地位,目前,w s b p e l 已经成为了 业务流程执行语言的事实标准,并有很多支撑工具。但是,w s b p e l 还有很多问题, 它对服务的描述仅限于语言层级,只能进行静态的服务组合,不能表达语义信息,且缺 乏对q o s 的监控。 o w l s 是d a r p a 组织继d a m l s 后推出的新一代语义w e b 服务描述标准,它使用 w 3 c 推荐的w 曲本体语言规范o w l ( w e bo n t o l o g yl a n g u a g e ) 作为语义基础。可以描述 w e b 服务语义,并可方便的扩展用户定制( 如q o s ) 。o w l s 有很多优点,但它还只是 个实验室标准,学术界比较推崇,但却没有得到工业界的支持,因此还未能大规模投入 到实际应用中。 w s b p e l 和o w l s 各有优缺点,但仔细分析过后不难看出,这两个标准的优势 是互补的:w s b p e l 提供了一套标记符号,能方便的进行w e b 服务编排;o w l s 能描 述w e b 服务的语义。可以将w s b p e l 与o w l s 相结合,实现动态、带语义的w e b 服 务组合、绑定和执行。 作为国家8 6 3 项目“面向流程管理的软件生产线”的子课题,本文重点研究语义w e b 服务组合的匹配算法和支持环境,为软件生产线提供支持语义的w s b p e l 引擎原型。 第一章绪论 1 2 研究现状分析 语义w 曲服务组合的研究方向有很多,本文主要研究以下两方面内容:1 语义w 曲 服务组合的匹配算法;2 语义w e b 服务组合的方法和支持环境。 1 2 1 语义w e b 服务组合的匹配算法 目前有很多学者对服务匹配算法展开了深入的研究,但研究方法和侧重点各不相 同,主要有以下几种: 文献1 1 5 】使用d a w l s 进行w e b 服务的语义匹配。这些算法根据请求与服务的 i n p u t 和o u t p u t 进行匹配,将服务匹配程度分为四种:e x a c t 、p l u g - i n 、s u b s u m e s 、f a i l 。 服务请求和待选服务之间的匹配结果取决于它们的i n p u t 和o u t p u t 的匹配程度,每个i n p u t 和o u t p u t 之间的匹配又取决于概念之间的关系。该方法的优点是查准率和效率都很高, 缺点是区分程度不够细致。 文献【6 ,7 】提出了一种精度很高的服务匹配算法,该算法使用过程模型来捕捉服务的 语义,使用模式匹配算法来查找满足请求的服务。该方法认为提高服务匹配的精度的关 键是能够捕捉服务和请求的足够的语义信息,而过程模型则能很好地提供这种信息的描 述,因此服务提供者首先必须把服务建模成过程模型,然后使用过程查询语言来进行检 索。这种方法的优点是大大提高了服务匹配的精度,缺点是过分地依赖于所建的过程模 型,如果建模方式不同或者所建的过程模型不够准确,那么匹配效果就会很差。 文献 8 1 0 把服务匹配分为两个阶段。首先根据请求服务的功能性需求,如服务的 功能,服务的i n p u t 和o u t p u t ,服务的前置条件及服务结果对服务进行过滤。第一阶段 的匹配确保留下的服务能够满足请求的基本需求。然后为当前请求任务确定最适合的服 务,这基于非功能性需求( q o s 、物理位置、安全性) 。第二阶段在服务发现和服务组合 领域是一个重要的研究方向,因为服务的动态绑定和执行是一种更加理想的方法。为了 实现第二阶段,定义了q o s 本体。使用o w l s 服务轮廓和q o s 本体描述进行服务匹配。 这个匹配方法考虑了服务的功能性和非功能性需求,但只有4 个匹配等级的区分,区分 度不够精确。 文献 1l 】提出了一种基于语义相似度的服务匹配算法。两个o w l 概念的相似度使 用它们共有的信息量来衡量,通过计算o w l s 的服务轮廓、服务模型和服务基点的相 似度就可以匹配服务请求。这种方法的优点是匹配的精度高,但算法的前提条件过于复 杂,而且不易实现,计算服务请求和候选服务的相似度时,使用服务模型和服务基点也 2 两北大学硕士学位论文 不切实际,因为用户发来的请求并不需要用服务模型和服务基点来匹配。 1 2 2 语义w e b 服务组合的方法 为了实现语义w e b 服务组合,需要解决以下几个主要问题: 1 服务的发现和选择,即用户必须与一个协调服务发生交互,这个协调服务负责 服务发现和组合。 2 对特定服务功能的组合,也就是说组合的任务必须仅考虑所需要的功能,而不 是将所有不同的服务整个地合并在一起。 3 用户不得干预任何机器可处理的任务,也就是说使组合和执行自动化。 4 解决由不同服务的数据类型和行为定义上的不同。 5 已经有些方法可以实现语义w e b 服务组合,下面介绍几个方法并阐述这些方 法的原理和工作方式。 b p e l 与o w l s 相结合实现语义w e b 服务组合 b p e l 4 w s ( b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g ef o rw e bs e r v i c e s ) 提供了一套标记 符号,可以把w e b 服务的互操作描述成业务流程。它把w e b 服务看成是业务流程的参 与者( p a r t n e r ) ,参与者需要充当某种角色( r o l e ) 。b p e l 4 w s 通过这种参与者的模式来集 成w r e b 服务。 d jm a n d e l l 和s m c l l r a i t h 在文献【1 2 】中提出了一种自底向上的利用b p e l 4 w s 和 d a m l s 实现w e b 服务组合的方法。他们将服务轮廓集中到一个d a m l s 库中,并根 据参与者所属性的描述,利用服务轮廓的语义查询伙伴,然后他们查询得到的语义描述 与b p w s 4 j 相结合,b p w s 4 j 是一个执行b p e l 4 w s 中所定义的特性的一个子集的引擎。 因为b p e l 4 w s 不可扩展,也就是说b p w s 4 j 仅能执行w e b 服务,不能查询w e b 服务, 因此他们构造了一个s d s 作为w e b 服务的查询器与b p w s 4 j 协同工作。s d s 处于 b p w s 4 j 流程和他的潜在的伙伴之问。b p w s 4 j 不是将请求传送给先前所选定的参与者, 而是通过一个本地绑定的w e b 服务接口将请求传送给s d s 。s d s 作为引擎和参与者之 间的一个动态代理,查询相应的w e b 服务。 s d s 可以被用束发现和调用多个w e b 服务,这些服务可以提供用户所需要的不同 结果。然而它并没有阐述w e b 服务功能自动集成和组合问题。d a m l s 确实为服务描 述定义了清晰的语义,但并没有提供一种工具或方法来动态地组合特定功能或所需要的 行为。复合流程描述必须事先给出,而且不能在运行时被创建。同样利用这种方法只能 3 第一章绪论 得到所有相匹配的服务,其中包括不需要的服务。此外,这些结果是直接从服务伙伴那 里获得的,因此这些结果是不同的。 基于w s m o 的语义w e b 服务与i r s i i i 组合 研究者己经开始着手与w e b 服务完全集成的研究,以支持电子商务。w s m o 本体 ( 服务建模本体) 是与技术相关的这些行动之一。i r s i l l ( i n t e m e tr e a s o n i n gs e r v i c e ) 是一个架构,或者说是已经实现了的基础设施,可以根据w s m o 本体,支持语义w e b 服务的创建、发布、组合和执行。 d s e l l 等在文献【1 3 】中引入了一个利用i a v a 语言开发的图形化工具,这个工具支持 用户根据组合过程中每一步上下文来调整目标,在i r s i i i 中定义动态组合,所产生的 组合由他们的j a v a a p i 进行协调。这种方法可以控制组合的定义,但是一些费力的工作, 比如根据用户需求发现服务,还是由机器承担的。此外,这种方法引入了附加特性,比 如在组合、控制操作符和协调过程中动态调度w e b 服务。 即使这样的工具能够解决上述问题,但还有两个主要缺点。首先,用户必须是计算 机专家,而服务组合方法旨在帮助普通用户。其次,由用户进行的人工步骤以及服务发 现的初衷是它自动完成。 i r s i i i 与o w l s 集成实现w e b 服务组合 e h a k i m p o u r 等在文献【1 4 】讨论了o w l - s 在某种程度上可以扩展i r s i i i 的可行性, 即目标和w e b 服务的分离可以增加定义任务组合的灵活性。 i r s i i iw e b 服务组件适合于表示一个由o w l s 过程所描述的服务,但是在i r s i i i 中,g o a l 这个概念是指对一个问题的一般描述,并且可以由不同的w e b 服务来解决。 一个目标描述一个要解决的问题,并表示了问题与一组服务描述相匹配的知识。 他们解释了如何将一个用o w l s 描述的服务的本体影射成一个w s m o 本体,如 何将o w l s 服务本体转化为适合在o w l s 中使用的o c m l 。e h a k i m p o u r 等建议利用 o w l s 描述w e b 服务,使用i r s i i i 对其进行组合。但是i r s i i i 并不能执行服务发现 和选择,迫使用户得手工完成这些任务。然而,我们需要动态地从每个服务中获取一些 功能。最后,这种方法与前一种方法一样不适合普通w e b 用户。 1 3 本文研究内容 w s b p e l2 0 是一种基于x m l 的语言,2 0 0 7 年4 月由o a s i s 标准组织发布,i b m 主推。由于i b m 在s o a 界的领先地位,目前w s b p e l2 0 已经成为服务组合语言的事 4 两北人学硕i :学位论文 实标准,并且有很多支持该标准的开源工作流引擎( a p a c h eo d e 、a c t i v e b p e l 、b e x e e ) , 但w s b p e l2 0 对服务的描述仅限于语言层级,不能表达语义信息,o w l s 可以描述 服务的语义,并有很多对服务进行查询和推理的技术和手段。基于上述问题,本文主要 研究基于w s b p e l 和o w l s 的语义w e b 服务匹配算法和支撑环境,具体工作如下: 1 解决w s 。b p e l 语言不能描述w e b 服务语义的问题,将w s b p e l2 0 与o w l s 结 合,并用w s b p e l 的扩展机制描述w 曲服务的语义信息,使w e b 服务可以方便的 被存储、查询、推理,以实现动态、带语义的w e b 服务组合。 2 提出一种新的基于本体的三级服务匹配算法,通过匹配w e b 服务的s e r v i c e c a t e g o r y 、 i n p u t 和o u t p u t 、q o s 实现服务匹配,在保证准确度的前提下大大提高了服务的匹配 速度。 3 提出递归反向搜索链算法,在进行服务调用时,服务请求者向语义代理( s d s ) 发 出调用请求,如果s d s 找不到合适的服务,调用该算法可以进行语义转化,在已有 的服务中进行推理,尽力构造出满足需求的服务链以代替查找不到的服务。 4 在开源工作流引擎a p a c h eo d e 的基础上扩展s d s 模块,解决了它只能静态、被动 的执行预先定义好的业务流程的问题,使其可以动态、带语义的执行w s b p e l 描 述的业务流程。 1 4 本文组织结构 本文的主要研究内容是语义w e b 服务组合的匹配算法和它的支撑环境,论文共分 为五章,简要介绍如下: 第一章绪论 本章主要介绍了论文的研究背景、国内外研究现状、本文的研究内容和组织结构。 第二章相关技术介绍 本章主要介绍了实现语义w e b 服务组合所用的技术。首先介绍了w e bs e r v i c e s 相 关技术( w s d l 、u d d i 、s o a p ) ;然后介绍了语义w e b 服务描述标准o w l s 和w e b 服务组合语言的事实标准w s b p e l ,分析比较了两种语言;最后介绍了丌源工作流引 擎a p a c h eo d e 。 第三章语义w e b 服务匹配算法 本章提出了两个算法:( 1 ) 三级服务匹配算法;( 2 ) 递归反向搜索链算法。三级服务 匹配算法根据服务目录( s e r v i c e c a t e g o r y ) 、服务的输入输出( i n p u ta n do u t p u t ) 和q o s 查找 5 第一章绪论 服务:递归反向搜索链算法可以在找不到合适服务的情况下进行语义转化,通过匹配参 与者的i n p u t 和o u t p u t 补全在2 个s e r v i c e 之间断开的链。最后对三级服务匹配算法做了 实验仿真。 第四章语义w e b 服务的发现、绑定和执行 本章引入了语义代理s d s ,解决在a p a c h eo d e 基础上实现带语义的w 曲服务的 发现、绑定和执行问题。这个问题实质上可以归结为三个问题:1 服务参与者以带语义 的形式描述,即解决w s b p e l 不能描述语义的问题;2 根据服务轮廓来存储、查询和 推理服务,即解决服务匹配查找的问题;3 查询出的服务参与者与a p a c h eo d e 整合, 即服务的绑定与执行的问题。第四章解决了这三个问题。 第五章系统实现 本章介绍了系统原型并用扩展后的原型系统运行了一个简单的实例,以证明该系统 的可行性和有效性。 总结与展望 本章简要归纳了本论文研究内容的创新点,展望了语义w e b 服务的下一步研究方 向。 6 西北大学硕十学位论文 2 1w e bs e r v i c e s 概述 第二章相关技术介绍 w e bs e r v i c e s 的主要目的是解决异构平台上数据和应用的整合与共享问题,以前的 许多分布式技术都试图解决这个问题( c o r b a 、r m i 等) ,但是这些技术要么过于复杂、 难于使用,要么不能穿透防火墙,不能在i n t e m e t 上进行工作,而且不同标准之间不能 很好地实现互操作。 w e bs e r v i c e s 技术很好地解决了这些问题,它使用开放的标准( w s d l 、u d d i 、 s o a p ) 实现了平台、编程语言无关。体系结构l l5 】如图2 1 所示: 一、 u d d i 图2 1w e bs e r v i c e s 体系结构 在这个体系结构下,服务被分为服务消费者和服务提供者。工作时,u d d i 起着中 介作用,服务提供者首先在u d d i 中注册,服务消费者在u d d i 中查找所需的服务,查 找到后再与服务提供者进行绑定和调用。 2 1 1w s d l w s d l ( w e bs e r v i c ed e s c r i p t i o nl a n g u a g e ) 臣pw 曲服务描述语言。w s d l 1 6 】描述服 务提供者的服务端点。它提供正式的端点接口定义并且建立服务的物理位置。w s d l 定 义可分为两类,抽象描述和具体描述。 抽象描述建立了w e b 服务的接口特征,它不用参考任何用于驻留或者促成w e b 服 务传输消息的技术。通过分离这个信息,使得不管底层技术平台发生任何改变都能保护 服务描述的完整性。抽象描述主要包含端口类型( p o r tt y p e ) ,操作( o p e r a t i o n s ) 和消息 ( m e s s a g e ) - - - 个主要部分。其中端口类型是一个或多个端口所支持的抽象操作的集合。 7 第二章相关技术介绍 w s d l 支持四种基本的抽象操作:o n e w a y 、r e q u e s t r e s p o n s e 、s o l i c i t - r e s p o n s e 和 n o t i f i c a t i o n 。作为抽象的端口定义,端口类型不包含任何与具体传输协议和数据格式编 码规范相关的内容;o p e r a t i o n 是服务所支持的某个动作的抽象描述,每个操作一般会引 用一条输入消息和一条输出消息。m e s s a g e 是对待传输或交互数据的抽象定义,消息使 用由类所定义的类型来定义整个消息的数据结构,即消息由一个或多个类型定义及类型 的实例组成。抽象描述的父接口片段提供服务接口的高层视图,通过对消息进行分类, 服务可以处理被称为操作的功能分组。每一个操作代表一个服务所执行的特定行为。服 务操作可与传统的分布式应用所用的公共方法相比较。 为了使w e b 服务能执行其任何逻辑,需要将其抽象借口的定义连接到一些真实的、 可实施的技术上。因为服务应用逻辑的执行必须包括通信,抽象的w e b 服务接口需要 与物理传输协议连接,这个连接定义成w s d l 文件的具体描述部分,它包含三个相关 部分:绑定( b i n d i n g ) 、端h ( p o r t ) 和服务( s e r v i c e ) 。其中b i n d i n g 为端口类型中定义的操 作和输入输出消息指派具体的传输协议和数据格式规范,w s d l 描述的绑定描述了服务 建立物理连接或者服务建立连接的需求。s o a p 是最常见的绑定形式。 绑定能应用于整个接口或者仅用于特定的操作。与绑定相关的是p o r t ,它代表可以 以特定协议访问的w e b 服务实际地址,它指定一个用于绑定的网络地址或者是一个用 于服务监听的u r l 。w e b 服务通过该端口与其它应用程序或者w e b 服务进行交互。这 个物理数据片段独立存在,从而使定位信息和其他方面的具体描述分开维护。s e r v i c e 是相关的服务访问点的集合,指定每个绑定的p o r t 地址。 2 1 2u d d i u d d i ( u n i v e r s a ld e s c r i p t i o nd i s c o v e r ya n di n t e g r a t i o n ) 虽p 统一描述、发现和集成协 议。u d d i l l 7 1 是用来注册与发现w e b 服务信息的,它始于2 0 0 0 年,由i b m 、m i c r o s o f t 和 其他3 3 家公司创立。u d d ir e g i s t r i e s 提供了一个机制,以一种有效的方式来浏览,发 现w e bs e r v i c e s 以及它们之间的相互作用。它创建了一个与平台无关的开放框架,用于 在i n t e m e t 上描述、发现服务和集成业务服务。u d d i 依赖于一个业务及其服务描述的 分布式注册库。u d d i 注册中心提供的信息分成三种: 白页:提供一些基本的信息如地址、联系人和已知标识符等。 黄页:黄页信息使用分类法系统产生类别划分,从而使得能在更大的范围内查找到 在注册中心注册的企业或服务。这样的类别划分不仅可以关联企业及其服务,还可以关 8 西北人学硕i :学位论文 联t m o d e l 。 绿页:绿页提供了与服务相关联的绑定信息,并提供了指向这些服务所实现的技术 规范的引用和指向基于文件的u r l 的不同发现机制的指针,绿页即所需的全部内容, 它们可提供对服务的w s d l 信息的访问。 w e b 服务在u d d i 注册中心注册所用的信息模型是u d d i 协议规范中w e b 服务发 布和发现的基础。u d d i 定义了4 种核心数据模型:业务实体( b u s i n e s s e n t i t y ) 、商业服 务( b u s i n e s s s e r v i c e ) 、绑定模板( b i n d i n g t e m p l a t e ) 和技术模型( t e e h n i e a l m o d e l ) 。 1 业务实体( b u s i n e s s e n t i t y ) b u s i n e s s e n t i t y 是对企业信息的建模,这个数据模型中主要包含在注册中心发布服 务的企业或机构的相关信息,包括企业的名字、联系方式和分类信息等。通过此数据信 息,可以对这些实体进行“黄页”类型的检索。 2 商业服务( b u s i n e s s s e r v i c e ) 元素表示已发布服务的集合,用来描述商业实体提供的服务,每一个 b u s i n e s s s e r v i c e 结构是b u s i n e s s e n t i t y 实体的逻辑子结构,它包含特定b i n d i n g t e m p l a t e 的实例。它和b i n d i n g t e m p l a t e 一起构成“绿页”信息。 3 绑定( b i n d i n g t e m p l a t e ) 每一个b u s i n e s s s e r v i c e 可以存在一个或多个技术实现方式,这些实现的技术描述 通过b i n d i n g t e m p l a t e 来实现。该数据结构描述了关于服务的入口点和构造规范的技术 信息,它包含了两个k e y ,一个是b i n d i n g k e y ,用来唯一标识一个b i n d i n g t e m p l a t e ;另 一个是s e r v i c e k e y ,用来指明包含这个b i n d i n g t e m p l a t e 的b u s i n e s s s e r v i c e 。 4 技术模型( t e e h n i e a l m o d e l ) t m o d e l 元素能够清晰地表示关于服务或者分类法信息的规范说明的描述。每一个 t m o d e l 通过一个u u i d 即t m o d e l k e y 来标识,包括了名字、描述、文档以及分类信息等。 在一个b i n d i n g t e m p l a t e 中可以包含一个或者多个t m o d e l 信息。 他们之间的关系是一个b u s i n e s s e n t i t y 包含若干个b u s i n e s s s e r v i c e ,而一个 b u s i n e s s s e r v i c e 可包含若干b i n d i n g t e m p l a t e 。 2 1 3s o a p 简单对象访问协议( s i m p l eo b j e c t a c c e s sp r o t o c o l ,s o a p ) 是一种轻量的、简单的、 基于x m l 的协议,它被设计成在w e b 上交换结构化和固化的信息。s o a p t l 8 1 可以和 9 第二章相关技术介绍 现存的许多因特网协议和格式结合使用,包括超文本传输协议( h t t p ) ,简单邮件传 输协议( s m t p ) ,多用途网际邮件扩充协议( m i m e ) 。它还支持从消息系统到远程过 程调用( i 灌c ) 等大量的应用程序。 s o a p 规范主要由s o a pe n v e l o p 、s o a p 编码规贝j j ( e n c o d i n g r u l e ) 、s o a pr p c 、s o a p 绑定( b i n d i n g ) 等四部分组成。 1 s o a pe n v e l o p 它定义了一个框架,该框架描述了消息中的内容是什么、发送者和接收者以及这些 操作是可选的还是必须的。s o a pe n v e l o p 包含一个强制的b o d y 结构和一个可选的 h e a d e r 结构。其中b o d y 包含了被传递的特定应用程序的数据信息,h e a d e r 则是提供安 全和路由方面的信息。 2 s o a p 编码规则 它定义了一种序列化的机制,用于交换应用程序所定义的数据类型的实例。其中, 数据类型可以是一个简单类型或是一个复合类型。复合类型由多个部分组成,每个部分 也是一个简单类型或复合类型。s o a p 规范定义的编码规则是有限的,当用户需要使用 自己的数据类型时,就可以使用自定义的编码规则,按需求扩展该基本定义。 3 s o a p i u c 它定义了用于表示远程过程调用和应答的协定,r p c 的调用和响应是通过b o d y 传 递的。在使用s o a p 时,必须绑定如h t t p 、s m t p 、f t p 等协议中的一种来实现s o a p i 冲c 。 4 s o a p 绑定 定义了一个使用底层传输协议来完成在节点间交换s o a pe n v e l o p 的约定。s o a p 消 息在传输的时候可以与不同的传输层协议进行捆绑,如:h t t p 、s m t p 、p o p 3 等协议。 由于这些协议同w e b 平台一起已经遍及到各种计算机平台和设备,并且能够通过代理 和防火墙,所以,通过与这些协议的绑定,s o a p 可以让所有连接到i n t e m e t 的应用程 序或者w e b 服务之间实现通信。目前s o a p 协议中定义了与h t t p 的绑定。利用h t t p 来传送s o a p 消息,主要是利用h t t p 的请求响应消息模型,将s o a p 请求的参数放 在h t t p 请求中,将s o a p 响应的参数放在h t t p 响应里。当需要将s o a p 消息体包含 在h t t p 消息中时,h t t p 应用程序必须指明使用t e x t h t m l 作为媒体类型。 虽然s o a p 的这四个不同部分是作为一个整体定义的,但它们在功能上相交,彼此 独立。为实施一个方法调用,需要以下信息:目标s o a p 节点的u r i 、方法名、可选的 1 0 两北人学硕1 :学位论文 方法或过程的特征、可选的方法或过程的参数和可选的头数据。 在实际应用中,s o a p 主要用来对w e b 服务进行调用。这时,发送者会把所要调用 的w e b 服务参数值从本地二进制格式转换到表示s o a p 消息的x m l 文档中,然后把文 档发送给远程服务器。而在过程服务器端,会有对应的s o a p 处理器解析x m l 文档, 取出所要调用的w e b 服务的参数信息,恢复成它的二进制状态,然后调用w e b 服务。 2 2o w l - s o w l s t l 9 1 是d a r p a 组织继d a m l s 后推出的新一代的语义w e b 服务描述标准,使 用w 3 c 推荐的w e b 本体语言规范o w l ( w e bo n t o l o g yl a n g u a g e ) 作为语义基础。语义 w e b 上需要使用一个基本的类和属性的集合声明来描述服务,这可以在o w l 的本体架 构下完成。o w l s 就是通过本体语言定义了一组本体来描述w e b 服务。 图2 - 2 项层服务本体 顶层服务本体如图2 2 所示,s e r v i c e p r o f i l e 描述“服务能做什么,即服务的功能”, 为一个寻找服务的代理提供有关信息类型来帮助代理决定该服务是否能满足需求;它还 可以用来描
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国广电南京市2025秋招行业解决方案岗位专业追问清单及参考回答
- 中国移动台州市2025秋招心理测评常考题型与答题技巧
- 国家能源绵阳市2025秋招面试专业追问及参考财务审计岗位
- 中国移动邵阳市2025秋招面试典型题目及答案
- 2025年产品陈列考试题及答案
- 中国移动迪庆自治州2025秋招网申填写模板含开放题范文
- 2025年水泥销售考试试题及答案
- 中国移动潜江市2025秋招笔试行测题库及答案技能类
- 广安市中石化2025秋招笔试模拟题含答案油气储运与管道岗
- 鹤壁市中储粮2025秋招面试专业追问题库机电维修岗
- 2025秋人教鄂教版(2024)科学一年级第一单元走近科学《1“钓鱼”游戏》 教学设计
- 2026届高考物理一轮复习策略讲座
- 食品腐烂变质安全培训课件
- 隧道施工车辆安全培训课件
- DB31/T 1173-2019咖啡厅(馆)等级划分与评定
- 魔芋怎么种?魔芋的种植技术
- GB/T 26766-2011城市公共交通调度车载信息终端
- GB/T 19658-2013反射灯中心光强和光束角的测量方法
- 工贸行业重大生产安全事故隐患判定标准解读课件
- 第7章-测向原理-课件
- 三相异步电动机正反转控制
评论
0/150
提交评论