(计算机软件与理论专业论文)web服务发现及组合问题中关键技术的应用研究.pdf_第1页
(计算机软件与理论专业论文)web服务发现及组合问题中关键技术的应用研究.pdf_第2页
(计算机软件与理论专业论文)web服务发现及组合问题中关键技术的应用研究.pdf_第3页
(计算机软件与理论专业论文)web服务发现及组合问题中关键技术的应用研究.pdf_第4页
(计算机软件与理论专业论文)web服务发现及组合问题中关键技术的应用研究.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(计算机软件与理论专业论文)web服务发现及组合问题中关键技术的应用研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 随着w 曲服务的广泛应用,针对w 曲服务的发布、发现和使用过程,其中许多关键 性技术问题的研究还处于初级阶段,需要进行深入研究和探讨,以便有效地满足服务请 求者对w 曲服务的需求。 本文首先概括了w 曲服务的概念、特点、体系构架、运作流程、w 曲服务栈、w e b 服务的发现、w 曲服务组合等技术问题;其次,本文介绍了基于q o s 的w 曲服务的体系 构架,提出了一种基于q o s 的服务发现模型,对传统的u d d i 数据结构进行了扩展,在 u d d i 数据库表中添加了服务质量的属性描述表和服务组合信息描述表,深入地研究了 基于服务质量( q o s ) 约束的w 曲服务发现技术、服务的服务质量( q o s ) 量化处理技 术以及基于服务质量( q o s ) 约束的w 曲服务组合算法:最后本文对基于q o s 艮务发现 的查准率进行了实验性测试,并在此基础上使用蚁群算法实现求解基于服务质量( q o s ) 约束的复杂w 曲服务的最优服务组合问题。实验表明,该算法能够较好地满足服务请求 者提出的带有q o s 约束的复杂服务请求,与传统的算法相比,具有较低空间复杂度的优 越性。但是在求解时会陷入局部最优解或者处于停滞状态,并存在时间复杂度较高等问 题。 因此本文的理论研究对w e b 服务在动态电子商务中的应用具有一定的借鉴作用。 w e b 服务技术仍是一个发展中的新兴技术,w e b 服务将是未来应用架构的一个极为重要 的模式。但在开放的w 曲环境下,w 曲服务发现与组合中依然有很多关键性的技术问 题亟待解决。 关键词: w e b 服务;服务质量;服务组合;服务发现;蚁群算法 a b s t r a c t a b s t r a c t w i t ht h ee x t e n s i v e l ya p p l i c a t i o no ft h ew e bs e r v i c e s ,m a n yo ft h ek e yt e c h n i c a li s s u e s s u c ha st h ep u b l i s h , d i s c o v e r ya n du s ep r o c e s so fw e bs e r v i c e sa r es t i l li nt h ei n i t i a lr e s e a r c h p h a s ew h i c hi sm o s td e s i r a b l et op e r f o r md e p t hr e s e a r c ha n di n v e s t i g a t i o nt h a te f f i c i e n t l y c o n t e n tt h ed e m a n d i n go ft h er e q u e s t e rf o rw e bs e r v i c e t h i sp a p e rf i r s t l yp r o v i d e dt h es u m m a r yo nt h ec o n c e p t ,f e a t u r e so fw e bs e r v i c e s ,d a t a i n t e g r a t i o nt e c h n o l o g i e so fs y s t e ms t r u c t u r e ,t h ed i s c o v e r ya n dc o m p o s i t i o no fw e bs e r v i c e s s e c o n d l y , t h i sp a p e rp e r f o r m e dt h ef o l l o w i n ge x p e r i m e n t st h a ta r ee x p a n s i o nb a s e do nt h e t r a d i t i o n a ls t r u c t u r eo ft h ed a t a b a s e ,a d d i n ga t t r i b u t e sd e s c r i p t i o nt a b l ea b o u tq u a l i t yo f s e r v i c e ( q o s ) a n dw e bs e r v i c e sc o m p o s i t i o ni n f o r m a t i o nt a b l et oi nt h eu d d id a t a b a s e ; i n v e s t i g a t i o no nw e bs e r v i c e sd i s c o v e r yt e c h n o l o g yb a s e do nq o sc o n s t r a i n t s ;q u a n t i f i c a t i o n t e c h n o l o g i e so fw e b s e r v i c e sq o sa n dc o m p o s i t i o na l g o r i t h m sb a s e do nq o s c o n s t r a i n t s ,a n d i m p l e m e n t a t i o no fo p t i m a lp a t hs e l e c t i o nu s i n ga n tc o l o n ya l g o r i t h mb a s e do nq o s c o n s t r a i n t s t h ee x p e r i m e n t ss h o wt h a tt h ea l g o r i t h mc a nm e e tt h es e r v i c er e q u e s t e rw i t ht h e c o m p l e xs e r v i c er e q u e s to fq o sc o n s t r a i n t s ,w h i c hh a sl o w e rs p a c ec o m p l e x i t ys u p e r i o r i t y t h a nt h et r a d i t i o n a la l g o r i t h m ,b u tat r o u b l ei st h a tt h ea l g o r i t h mw o u l db ep r e s e n tt h ep a r t i a l o p t i m a ls o l u t i o ni nas o l u t i o np r o c e s s i o n ,o ra tas t a g n a t i o ns t a t e ,a n dt h e r ei sl a j 【g ht i m e c o m p l e x i t yo ft h ei s s u e s i nt h ep a p e r , t h et h e o r e t i c a lr e s e a r c ho fw e bs e r v i c e si nt h ea p p l i c a t i o no fd y n a m i c e - c o m m e r c ec a nb eu s e df o rr e f e r e n c e w e bs e r v i c e st e c h n o l o g yi ss t i l li nt h ed e v e l o p m e n to f e m e r g i n gt e c h n o l o g i e s w e bs e r v i c e sa r c h i t e c t u r ew i l lb eav e r yi m p o r t a n tm o d e li nt h ef u t u r e a p p l i c a t i o n s b u ti na no p e ne n v i r o n m e n t ,w e bs e r v i c e ss t i l lh a v em a n yc r u c i a lt e c h n i c a l p r o b l e m st h a tm u s tb er e s o l v e di nd i s c o v e r ya n dc o m p o s i t i o no fw e bs e r v i c e s k e y w o r d s : w e bs e r v i c e s ;q o s ;s e r v i c e sc o m p o s i t i o n ;s e r v i c e sd i s c o v e r y ;a n tc o l o n ya l g o r i t h m i i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果尽我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 本人为获得江南大学或其它教育机构的学位或证书而使用过的材料 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意 签名:日 期:炒矛弓字 关于论文使用授权的说明 本学位论文作者完全了解江南大学有关保留、使用学位论文的规 定:江南大学有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅,可以将学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、 汇编学位论文,并且本人电子文档的内容和纸质论文的内容相一致 保密的学位论文在解密后也遵守此规定 签名: 导师签名: 日 期:少以弓驴 绪论 第一章绪论 1 1 课题研究的实用价值和理论意义 近年来,随着电子商务的迅速崛起,w e b 应用从局部化发展到全球化,从 b 2 c ( b u s i n e s s t o c u s t o m e r ) 发展至l j b 2 b ( b u s i n e s s t o b u s i n e s s ) ,从集中式发展到分布式。 w 曲服务作为一种新兴的w e b 应用模式,是一个崭新的分布式计算模型,是w e b 上数据 和信息集成的有效机制。从电子商务应用领域来看,复杂的应用连接和程序代码造成了 电子商务应用的高维护代价和更新代价,而w 曲服务“使用而不拥有”的特点正好能够 解决这一问题,从而使其成为电子商务的一种有效解决方案和一种基于w e b 和网络体系 结构的新兴应用模式。w e b 应用和商务处理的网络化和全球化,信息处理、信息集成的 自动化,为w 曲服务的发展和研究提供了广阔的应用背景及市场。w e b 服务不仅是一些 协议的集合,也是独立应用实体的集合,我们认为w 曲服务是一个集应用逻辑、商务智 能、网络技术、工作流管理、知识表示、逻辑推理、安全保密和信息集成等技术为一体 的新兴应用模式。工业界、学术界从不同的侧面对w 曲服务进行研究,从理论及实际应 用的角度为其提出了一系列新兴的实施技术和改进策略。因此对w 曲服务中相关技术的 研究具有十分重要的意义 1 】。 1 2 相关工作 1 、【2 】 3 】【4 】文中提出了对典型的w 曲服务体系架构进行扩展,克服其缺少有关服务 的非功能性属性描述,从而提高服务发现准确性。典型的w e b 服务的体系架构是基于服 务提供者、服务注册中心和服务请求者三个角色和发现、发布、绑定三个动作组成的。 因缺乏对服务质量( q o s ) 的描述而难以从功能相同的众多服务中为用户选择最佳服务。 2 、【6 】【7 】【8 】文中研究服务发现的匹配算法,希望能提高服务发现的效率。用户如 何在众多的服务中找到最适合自己的服务,一个关键技术就是关于服务发现的匹配算法 问题的研究。 3 、【9 】【1 0 】 1 1 等文中提出如何实现复杂功能的w 曲服务,提出关于服务组合思想以 及一些算法( 如模拟退火算法等) 。w 曲服务是自包含、自描述的模块应用,利用基于 标准的协议( l t 如s o a p ,w s d l 和u d d i ) ,可以把不同提供商提供的w 曲服务有效地 集成,从而提供增值的服务。在对服务进行合成时,由于w e b 服务数量的逐渐增加, 提供相同或相似功能的服务也越来越多,再加上w 曲服务本身具有的自治性、异构性、 分布性等特征,使得服务的选择成为实现服务合成的前提。那么如何组合服务,什么样 的算法能更好的实现服务的组合就成了人们研究的热点。 1 3 本文主要工作 本文首先概括了w e b 服务的概念、特点、体系构架、运作流程、w e b 服务栈、w e b 服务的发现、w e b 服务组合等技术问题,并提出了带有q o s 约束的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 江南大学硕十学位论文 的体系结构进行了扩展,增加了w e bs e r v i c e s 的服务质量管理中心角色,对传统的u d d i 数据结构进行了扩展,在u d d i 数据库表中添加了服务质量的属性描述表和服务组合信 息描述表,深入地研究了基于服务质量( q o s ) 约束的w e b 服务发现技术、服务的服务 质量( q o s ) 量化处理技术以及基于服务质量( q o s ) 约束的w 曲服务组合算法;最后 分别对量化后的w e b 服务采用了带有q o s 约束的发现实验测试,并与随机发现服务的 方法进行了比较;在对复杂w e b 服务的组合问题上,本文采用了蚁群算法来求解基于 服务质量( q o s ) 约束的w e b 服务组合的最优服务组合问题,并与随机组合服务的方法 进行了比较。 两个实验分别表明:( 1 ) 采用带有q o s 约束的服务的查准率远远高于无q o s 约束 的服务发现的查准率,但是其消耗的资源要比无q o s 约束服务匹配方法消耗的较多;( 2 ) 采用蚁群算法能够较好地满足服务请求者提出的带有q o s 约束的复杂服务请求,与传统 的算法相比,具有较低空问复杂度的优越性,具有较高的组合服务的查准率。但是在求 解时会陷入局部最优解或者处于停滞状态,并存在时间复杂度较高,响应时间长等问题。 1 4 本章小结 本章概述本文研究的背景,分析了其研究的实用价值和理论意义,介绍目前本课题 的研究现状,讨论分析了目前研究现状存在的问题,以及本文研究的主要内容。 2 w e b s e r v i e e 概述 第二章w e bs e r v i c e 概述 2 1w e bs e r v i c e 简介 目前w e bs e r v i c e 已经在全球范围启动了i t 业的新浪潮,无论是平台供应商、解决 方案供应商、技术供应商还是服务提供商都纷纷在自己的平台、解决方案以及服务中加 入w e bs e r v i c e 。惠普公司是最先提出这个观点的公司,他们制定了有关“e s p e a k ”的 标准来保证应用程序之间的交互,并声称将成为下一代互联网信息交互的标准。随后, 微软便推出了n e t 战略,全面支持w e bs e r v i c e 。i b m 也很快就发布了w s t k ( w e bs e r v i c e t o o l k i t ) 和w s d e ( w e bs e r v i c ed e v e l o p m e n te n v i r o n m e n t ) ,申明对w e bs e r v i c e 的全力 支持。与此同时,国际性标准化组织w 3 c 制定了w e bs e r v i c e 的各种标准。随后,o r a c l e 开发出自己的d y n a m i c 服务,并和o r a c l e8 ir e l e a s e2 集成在一起。s u n 公司在宣布了 自己的w e bs e r v i c e 框架后,将w e bs e r v i c e 的标准溶入j 2 e e 的环境,使w e bs e r v i c e 有了更加广泛的支持平台。以微软、惠普、i b m 、s u n 、o r a c l e 等为首的计算机业巨头 们无一例外地在自己的软件产品以及解决方案全面支持w e bs e r v i c e ,同时他们共同成 立了w e bs e r v i c e 互操作组织w s i o ( w e bs e r v i c ei n t e r o p e r a b i l i t yo r g a n i z a t i o n ) ,致力于 推广w 曲s e r v i c e 的全面应用。 w 曲s e r v i c e 不仅仅是一个革命性的技术,同时它对计算机软件的体系架构将产生 深远的影响。自此,原先处于不同平台,使用不同对象技术的c o r b a 、d c o m 、e j b 构架都能够去除平台和实现的差异,统一在一个技术层面之上,这个技术层面就是w e b s e r v i c e 技术层。构筑w e bs e r v i c e 的w 曲s e r v i c e 技术家族的主要成员有x m ls c h e m a 、 s o a p 、w s d l 和u d d i ,它们都是完全基于新一代i n t e r n e t 种子技术x m l 。因此,w e b s e r v i c e 应用的所有机制完全是基于现有的技术,并没有创造一个完全的新体系,所有的 技术协议都遵循着一个共同的原则,那就是继承原有的被广泛接受的技术,也正因为如 此,w e bs e r v i c e 才能在如此短的时间内被广泛地接受。x m ls c h e m a 为在w e bs e r v i c e 之间交换数据而提供了一个核心的跨平台数据建模工具。s o a p 为在不同系统之间实施 平台无关的交互定义了一套基本的元规则和跨平台消息机制,是w e bs e r v i c e 体系中服 务交互的基础架构。w s d l 则是w e bs e r v i c e 接口界面的跨平台描述工具,为w e bs e r v i c e 的交互界面能被系统自动处理提供保障。u d d i 则是在动态服务集成解决方案中的首次 尝试。 w e bs e r v i c e 是下一代互联网分布式计算的基本组成单元。它并不追求代码的可移 植性,而是要使分布在互联网中的各种系统实现交互。它采用的是已被业界广泛接受的 通用开放标准( h r r p 和) ( 1 l ) ,因此能克服存在于各种对象模型、操作系统和编程语 言之间的差异,并且还能实现应用程序间的通信与协作。应用程序可以由多个w e b s e r v i c e 构成,这些w e bs e r v i c e 能够组合在一起协同工作而不必考虑它们运行在哪里以 及如何实现。 w e bs e r v i c e 技术还是为解决在i n t c m e t 环境下,松散耦合的w e bs e r v i c e 之间进行 相互调用、相互集成而设计的技术框架。它通过使用x m l 消息处理启用数据交换和应 江南大学硕士学位论文 用程序逻辑远程调用,使数据能够通过防火墙,并在异构系统之间移动。w e bs e r v i c e 的客户端和w e bs e r v i c e 之间的唯一假设是接收者理解其接收到的消息。这样,用任何 语言编写、使用任何组件模型和在任何操作系统上运行的程序都能够访问w e bs e r v i c e 。 w e bs e r v i c e 主要目标就是在现有的各种异种平台基础上构筑一个通用的平台无关、协 议无关、语言无关的技术层,各种不同平台之上的应用均依靠这个技术层来实施彼此的 连接和集成。 w e bs e r v i c e 正在开创一个分布式应用程序开发的新时代,将成为把所有计算设备 链接到一起的基本结构。w 曲s e r v i c e 的兴起意味着计算模式的改变,把基于客户机服 务器( c s ) 模式和基于浏览器月艮务器( b s ) 模式的传统计算方式转向基于w e bs e r v i c e 的 松散耦合、动态集成的新分布式计算方向发展【1 2 】。 2 2w e bs e r v i c e 的特点 w 曲s e r v i c e 是封装成单个实体并发布到网络上供其他程序使用的功能集合。w 曲 s e r v i c e 是用于创建开放分布式系统的构件,可以使公司和个人迅速且廉价地向全世界提 供其数据服务。 w e bs e r v i c e 是下一代分布式系统的核心,它具有如下特点: ( 1 ) 互操作性:任何的w 曲s e r v i c e 都可以与其他w e bs e r v i c e 进行交互。由于有 了s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) 这个所有主要供应商都支持的新标准协议,因 而避免了在c o r b a 、d c o m 和其他协议之间转换的麻烦。还因为可以使用任何语言来 编写w e bs e r v i c e ,因此开发者无需更改其开发环境,就可生产和使用w e bs e r v i c e 。 ( 2 ) 普遍性:w e bs e r v i c e 使用h 丁r p 和x m l 进行通信。因此,任何支持这些 技术的设备都可以拥有和访问w 曲s e r v i c e 。 ( 3 ) 易于使用:w e bs e r v i c e 背后的概念易于理解,并且有来自i b m 和微软这样 的供应商的免费工具箱能够让开发者快速创建和部署w e bs e r v i c e 。此外,其中的某些 工具箱还可以让已有的c o m 组件和j a v a b e a n 方便地成为w 曲s e r v i c e 。 ( 4 ) 行业支持:所有主要的供应商都支持s o a p 和周边w e bs e r v i c e 技术。例如, 微软的n e t 平台就基于w e bs e r v i c e ,因此用v i s u a lb a s i c 编写的组件很容易作为w e b s e r v i c e 部署,并可以被i b mv i s u a l a g e 编写的w e bs e r v i c e 使用。 2 3w e bs e r v i c e 的体系结构 w e bs e r v i c e 是独立的、模块化的应用,能够通过网络,特别是w w w 来描述、发 布、定位以及调用。w e bs e r v i c e 的体系结构描述了三个角色( 服务提供者、服务请求 者、服务代理者) 以及三个操作( 发布、查找、绑定) 。 2 3 1w e bs e r v i c e 体系构架 对于w e bs e r v i c e 而言,其典型的体系构架应当如图2 1 所示。从图中可以看到, w e bs e r v i c e 的体系构架是基于服务提供者、服务注册中心和服务请求者三个角色和发 现、发布、绑定三个动作组成的。服务提供者是w e bs e r v i c e 的拥有者,为其它用户或 4 w e b s e r v i c e 概述 服务提供已有的功能,服务请求者是w e bs e r v i c e 功能的使用者,他向w e bs e r v i c e 提供 者发送消息以获得服务。服务注册中心即u d d i 注册中心,提供w e bs e r v i c e 提供者发 布w e b 信息以及w e bs e r v i c e 请求者获取w e bs e r v i c e 信息的平台,充当中介的角色, 将w e bs e r v i c e 请求者与合适的w e b 提供者联系在一起。对于上述三个角色之间的任意 两者之间的交互即绑定、发现与发布,使用的都是w e bs e r v i c e 的交互方式( 服务注册 中心也是以w e bs e r v i c e 的形式来运行的) 。发布是为了让用户或其它服务知道某个w e b s e r v i c e 的存在以及相关信息,发现是为了找到合适的w e bs e r v i c e ,绑定则是在提供者 和使用者之间建立某种联系。 图2 1 系统中的w e bs e r v i c e s 构架 f i g 2 - 1w e bs e r v i c e sf r a m e w o r ki ns y s t e m 2 3 2w e bs e r v i c e 的运作流程 由图2 2 可以看出w e bs e r v i c e 的运作流程如下: 服务提供者编写好其所提供的服务后,必须同时提供w s d l 文档来描述所提供服 务的详细信息,并将w s d l 描述文档再u d d i 中注册。当服务请求者请求服务时,必 须先到u d d i 中寻找有谁提供所需的服务,然后再依据服务提供者所提供的w s d l 文 档编写相应的客户端程序。 5 江南人学硕士学位论文 图2 - 2w e bs e r v i c e 的运作流程图 f i g 2 - 2w e bs e r v i c ef l o wc h a r t w i t h 2 4w b bs e r v i c e 栈( w b bs e r v i c es t a c k ) w e bs e r v i c e 不同于已有的构件对象模型以及相关的对象模型协议,如c o r b a 和 i i o p ( i n t e r n e ti n t e r - o r bp r o t o c 0 1 ) 、c o m 和d c o m 以及j a v a 和r m i ( r e m o t em e t h o d i n v o c a t i o n ) 。w e bs e r v i c e 可以用任何语言编写,并且可以使用h 盯p 访问。 从技术上看,一个w e bs e r v i c e 是一个由内容、应用代码、过程逻辑、或者这些部 分的任意组合所构成的x m l 对象,并且可以通过任何t c p i p 网络访问,只要网络中使 用s o a p 标准集成,使用w s d l 标准进行自描述,使用u d d i 标准在一个公共的或者 私有的目录中注册和发现。如图3 所示,w e bs e r v i c e 由多个层构成,这些层堆叠在一 起形成了发现和调用一个独立的w e bs e r v i c e 所提供功能的标准机制的基础。即:w 曲 s e r v i c e 栈以层次结构来表示,高层在低层的基础之上构建。 图2 3 中h t r p 提供了分布式应用之间的通信机制,x m l 定义了数据交换和描述的 格式,s o a p 是调用w e bs e r v i c e 的协议,w s d l 描述w e bs e r v i c e 的格式,而u d d i 则是注册、查找和使用w e bs e r v i c e 的中枢组织。下面分别介绍这些协议及相关的规范。 6 w e b s e r v i c e 概述 幔务w s d l 服务发现层 服务描述层 s o a p x m l 基于x m l 的消息层 i m 口日络层 囤2 - 3 w e b 服务栈 f i g2 - 3w e bs e r v i c e ss l a c k 2 4 1h t t p w e bs e r v i c e 栈中的最底层是网络层,也可以称为协议层。分布式的应用需要有网 络协议来定义两个并发过程之间的通信机制。概念上,w e bs e r v i c e 的设计是与协议无 关的,在图3 的分层体系结构模型中从底向上任何标准的i n t e r a c t 协议都可以用于在 网络上调用w e bs e r v i c e 。但目前主要是h t t p ( h y p e r t e x t t r a n s p o r t p r o t o c 0 1 ) 和h t l p s ( h y p e r t e x t t r a n s p o r t p r o t o c o ls o l u t e ) 协议。 h 1 1 甲是一个基于文本的、“请求一响应”( r e q u e s t r e s p o n s e ) 型的协议,它规定一 个客户打丌到服务器的一个连接,然后以专门的格式发送一个请求,服务器进行响应, 同时如果必要则保持连接的打开状忐。h 1 r p 使用的普遍性及其固有的穿防火墙的能力 使它成为主导的w e bs e r v i c e 网络协议。但同时由于 m p 是基于文本的协议而缺乏表 示远程过程调用( r p c ) 消息参数值的机制。 其它的请求响应类型的传输协议,如文件传输协议( f i l et r m n s f e rp r o t o c o l ,f t p ) 和简单邮件协议( s i m p l em a i lt r a n s p o r tp r o t o c o l ,s m t p ) 也可以使用,但是并没有在 w e bs e r v i c e 的各种标准中定义,目前也只有极少数实现支持这些协议。 另外,最近i b m 发布了一个可靠通信协议的提案,称作h i t p r 。h t t p r 在哪 的基础上加强了可靠性,在保持 卿优点的同时能够保证消息可以不受阻碍地发送到 目的地。可靠的通信对w e bs e r v i c e 来说是一个非常关键的方面虽然目前对由协议层 实现是否最适合仍然有争议,但在不远的将来它肯定会以某种形式出现。 2 4 2 ) 口咀。( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标记语言) r 兀p 是一种基于文本的协议,困而缺乏表示r p c 消息中的参数值的机制,这也是 x m l 作为w e bs e r v i c e 的一个重要成分出现的原因。x m l 是一种元语言,可以通过标 准的编码和格式化信息的方法进行跨平台的数据交换。x m l 允许数据被串行化为易于 被任何平台解码的消息格式,提供了在网络应用之间交换结构化数据的机制。 ) 眦采用纯文本表示,设计的初衷是为了存储、传送和交换数据的。) 呲是一种 标记语言,标记在x m l 中不是预先确定的,而必须由使用者自己定义。x m l 允许使用 江南人学硕士学位论文 者自由发表有用的信息,不仅可以是有关数据结构的,也可以是关于数据意义的。另外, x m l 文档的结构、内容和外观可以作为三个不同的部分进行维护,提供了更高的独立 性。 对于数据表示层来说,可扩展性是一个关键因素。为了支持可扩展性,w e bs e r v i c e 需要一种机制以避免名字冲突,并允许一个程序只处理自己所关心的元素。x m l 名空 间( n a m e s p a c e s ) 提供了一种简单、通用的方式以区分相同名字的元素或属性。为了支 持可扩展性,x m l 中的每个元素和属性都有一个相关的名空间u r i 。 w e bs e r v i c e 需要一种方法定义w e bs e r v i c e 消息中使用的数据类型。x m ls c h e m a 规范标准化了一个描述x m l 数据类型的符号集,还定义了一个内置简单数据类型的集 合和在各x m l 文档中建立元素类型的机制。x m ls c h e m a 规定了x m l 文档的逻辑结构, 定义了元素、元素属性以及元素和元素属性之间的关系。 x m l 仍然处于不断的发展中。需要说明的是,x m l 本身只是一种标记语言,只是 进行描述,并不提供商务逻辑,w e bs e r v i c e 提供对这些逻辑的访问。这也是为什么w e b s e r v i c e 的更高层的、基于x m l 概念同样非常重要的原因。 2 4 3s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c o l ,简单对象访问协议) s o a p 是目前被广泛接受的消息传输协议。s o a p 是一个为信息交换设计的轻量协 议,用于在网络应用程序之间交换结构化数据,是一种基于x m l 的机制。s o a p 主要 是在分布的、分散的环境中提供了一个跨i n t e r a c t 调用服务的框架结构,并提供了独立 于编程语言和分布对象底层基础结构的跨平台集成机制。s o a p 代表了x m l r p c 的发展, 已经被w 3 c 作为一种i n t e m e t 标准采纳。 s o a p 是一个远程过程调用( 1 冲c ) 协议,使用标准的i n t e r n e t 协议进行传输:同 步调用时的h t t p 或异步调用时的s m t p 。由于可以在h t r p 上运行,这使得s o a p 在 穿防火墙进行操作的方面优于d c o m 、r m i 和i i o p ,而在嵌入设备上实现s o a p 也比 开发一个o r b 更简单。 s o a p 的主要设计目标是简单性和可扩充性。为了到达这两个目标,s o a p 中省略 了在其它消息系统和分布式对象系统中常见的一些特性,如无用存储单元收集、消息批 处理等。 s o a p 没有定义一种编程模型或实现,而是定义了一个模块化的包装模型,并在模 块内定义了编码数据的编码机制。这使得s o a p 可以在从消息传递系统到远程过程调用 的任何系统中应用。 ( 1 ) s q 廿的组成 s o a p 由四个部分组成: 1 ) 一个s o a p 封皮( e n v e l o p e ) ,定义了描述消息所包含信息的框架结构,即消息 中包含什么信息、由谁来处理以及是必需的或可选的。 2 ) 一组s o a p 编码规则( e n c o d i n gr u l e s ) ,定义了一个串行化机制,用于交换应用 定义的数据类型的实例。s o a p 编码的类型使用简单的标量类型和复合类型,如结构和 w e b s e r v i c e 概述 数组。这些类型以x m l 文档元素的形式表现,x m ls c h e m a 规范中定义的数据类型以 及这些数据类型的派生类型都可以直接用作s o a p 元素。 3 ) s o a pr p c 表示,定义如何表示远程过程调用和响应。s o a p 的设计目标之是 用x m l 的可扩展性和灵活性封装r p c 功能,在s o a p l 2 中详细定义了r p c 和响应的 统一表示,将对一个方法的调用和响应作为结构来建模,结构中包含了返回值,或者还 可能包括传入的参数。 4 ) s o a p 绑定( b i n d i n g ) ,定义如何使用底层传输协议进行s o a p 消息的交换。虽 然s o a p 本身可以和多种协议结合使用,但s o a p l 2 中只描述了在h t r p 中的使用。 s o a p 和h t r p 绑定可以同时使用s o a p 的形式方法与分散的灵活性以及h 1 v r p 丰富的 特性集。在h t t p 中使用s o a p 并不意味着s o a p 覆盖了h t t p 现有的语义,而是s o a p 继承了h t r p 的语义。 ( 2 ) s o a p 消息 s o a p 消息是用x m l 编码的文档,由三个部分组成: 1 ) s o a p 封皮( s o a pe n v e l o p e ) ,是描述s o a p 消息的x m l 文档的顶点元素。 2 ) s o a p 消息头( s o a ph e a d e r ) ,提供了一种灵活的机制对s o a p 消息以分散的、 模块化的方式进行扩充,而通信的各方( s o a p 发送者,s o a p 接收者以及s o a p 中介) 不必预先知道。s o a p 消息头是可选的。 3 ) s o a p 消息体( s o a pb o d y ) ,定义了一个简单的机制来交换要发送给最终s o a p 接收者的消息中的必要信息,是这些信息的容器。典型的使用是编组r p c 调用和s o a p 错误报告。 ( 3 ) s o a p 消息交换模型 s o a p 消息是单方向的,从一个s o a p 发送者( s e n d e r ) 到一个s o a p 接收者 ( r e c e i v e r ) 。但单独的消息通常可以被组合在一起形成其它消息机制。例如,s o a p 通 过在h t r p 请求中提供一个s o a p 请求消息和在h t t p 响应中提供一个s o a p 响应消息 实现h 1 1 p 的请求响应消息模型。 s o a p 消息交换模型要求接收到一个s o a p 消息的应用程序执行下列操作: 1 ) 识别s o a p 消息中意图供给本应用的部分,本应用可以作为s o a p 中介将消息 的其它部分传递给另外的应用。 2 ) 检验s o a p 消息中指定的所有必须处理的部分,并进行相应的处理。 3 ) 如果s o a p 应用不是消息的最终目的地,它应该在删除所有自己消耗的部分后 将消息转发给消息要供给的下一个应用。 s o a p 只是一种包装和绑定调用一个w e bs e r v i c e 所需信息的方式,w e bs e r v i c e 也可以使用其它的编码技术调用。另外,s o a p 本身没有严格地归入w e bs e r v i c e ,s o a p 可以作为一种对任何类型的远程对象或过程的访问机制使用,也可以只是一个简单的消 息传递机制。 除了s o a p 以外,w 3 c 创建的x m l p 工作组还建立了x m l 协议( e x t e n s i b l em a r k u p l a n g u a g ep r o t o c o l ,) ( m l p ) 。x m l p 是类似于s o a p 的x m l 消息协议,包括封皮、对 9 江南人学硕士学位论文 象串行化方式、h 1 v r p 传输绑定以及进行远程过程调用的方式几个部分。甚至有人认为 x m l p 将逐步取代s o a p 。 2 4 4w s d l ( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ,w e bs e r v i c e 描述语言) w 曲s e r v i c e 的接口由基于x m l 的w s d l 定义,它提供了应用访问指定的w e b s e r v i c e 所必需的全部信息,描述服务提供了什么功能、服务位于何处以及服务如何调用。 w s d l 以x m l 格式描述网络服务,将服务描述为在包含面向过程或面向文档信息 的消息上进行操作的一组端点。操作和消息是抽象描述的,然后绑定到具体的网络协议 和消息格式以定义一个端点。相关的具体端点被组合成为抽象端点( 服务) 。w s d l 是 可扩展的,允许描述任何端点和消息,而不考虑通信使用的消息格式或网络协议。 w s d l 使用下面的元素定义网络服务 1 3 】: 类型( t y p e s ) ,使用某种类型系统的数据类型定义的容器。w s d l 并没有引入新的 类型定义语言,而将x s d 作为自己的标准类型系统,并允许通过可扩展性使用其它的 类型定义语言。 消息( m e s s a g e ) ,对要传送的数据的一个抽象定义。 操作( o p e r a t i o n ) ,对服务支持的动作的抽象描述。 端口类型( p o r tt y p e ) ,一个或多个端点支持的操作的一个抽象集合。 绑定( b i n d i n g ) ,对特定端口类型的一个具体协议和数据格式规格。 端口( p o r t ) ,一个单独的端点,由一个绑定和一个网络地址组合在一起定义。 服务( s e r v i c e ) ,一组相关的端点的集合。 一个w 曲s e r v i c e 由一组端口定义,而端口由绑定到一个具体协议和数据格式规范 的一组抽象操作和消息定义。操作和消息的抽象是为了使它们可以复用和绑定到不同的 协议和数据格式,如s o a p 、 h t r pg e t p o s t 或m i m e 。 在w s d l 中,端点和消息的抽象定义是和它们的具体网络配置和数据格式绑定相 分离的;另外,w s d l 定义了一个公共的绑定机制,用于将特定的协议或数据格式或结 构连接到抽象的消息、操作或端点,这些都允许对抽象定义的复用。 2 4 5u 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 ,统一描述发现和集成) 面对极度丰富的服务,最常出现的问题是“在哪里以及如何找到需要的信息? 。统 一u d d i 规范在底层协议的基础上又定义了一层,在这一层,不同的企业能够以相同的 方式描述自己提供的服务和查询对方提供的服务。 u d d i 是一套基于w e b 的、分布式的、为w e bs e r v i c e 提供的信息注册中心的实现 标准规范,同时也包含一组使企业能将自身提供的w e bs e r v i c e 注册以使别的企业能够 发现的访问协议的实现标准 1 4 】。 ( 1 ) 信息结构 u d d i 为表示x m l 中商业服务描述定义了一个数据结构标准,提供了更高层次的 商业信息以补充w s d l 中的说明。u d d i 主要定义了四种基本的信息结构: 商业实体( b u s i n e s s e n t i t y ) ,描述商业信

温馨提示

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

评论

0/150

提交评论