已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)基于p2p网络的分布式uddi模型的研究和实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京邮电大学硕士研究生学位论文基于p 2 p 网络的分布式u d d i 模型的研究和实现 摘要 随着互联网软件技术及其应用的迅速发展,基于x m l 的万维网服务已经成为i t 业界的 焦点,万维网服务的主要目标是在现有的各种异构平台的基础上构建一个通用的与平台、 语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实现彼此的连接和集成。 而传统的u d d i 提供了一组标准的规范,用于服务的描述、发现和集成,拓展b 2 b 交互的范 围,简化了交互过程,解决了企业中遇到的大量问题,因此赢得了业界的广泛支持。但随 着企业级的万维网服务应用越来越深入,每天都有成千上万的万维网服务出现,而采取集 中处理模式的传统u d d i 具有集中处理模式存在的缺陷,因此如何改进传统的u d d i 机制所 存在的缺陷是一个非常值得进一步研究的课题。 p 2 p 网络具有很好的网络缩放性,容错性,能很好的提高网络资源带宽的利用率,所 以越来越受到人们的关注,相应的p 2 p 网络应用开发也越来越多。 本论文从传统u d d i 实现机制和p 2 p 网络实现机制的相似点出发,考虑把两个实现机制 进行整合,利用p 2 p 网络的优势来改进传统u d d i 实现机制中的缺陷,即提出基于p 2 p 网络 的分布式u d d i 机制。整个机制在没有改变现有万维网服务体系结构的前提下,通过在 u d d i 的服务注册中心上引入相应的p 2 p 通信模块,并增2 h p 2 p 网络通信层。由服务注册中 心上的p 2 p 通信模块来产生相应的服务交互请求,并通过下层的p 2 p 网络通信层来实现多个 服务注册中心之间服务信息的交互。 基于p 2 p 网络的分布式u d d i 对外提供统一的访问a p i 入口站点,并把服务的响应结果 以统一的形式返回给服务请求者或者服务提供商。最后通过系统功能的测试来验证了基于 p 2 p 网络的分布式u d d i 机制的工作模式,证实基于p 2 p 网络的分布式u d d i 机制的可行性。 关键词:万维网服务;u d d i ;对等网;j x t a 南京邮电大学硕士研究生学位论文基于p 2 p 网络的分布式u d d i 模型的研究和实现 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fi n t e r a c tt e c h n o l o g ya n di t sa p p l i c a t i o n s ,x m l - b a s e dw e b s e r v i c e sh a sb e c o m et h eo n eo fh o tt o p i c si nt h ei ti n d u s t r y t h ea i mo fw e bs e r v i c e si st o b u i l dac o m m o np l a t f o r mf o rt h ea p p l i c a t i o n so ni n t e r n e t t r a d i t i o n a lu d d ip r o v i d e sag r o u p o fs t a n d a r d ss p e c i f i c a t i o n sf o rt h es e r v i c e sd e s c r i p t i o n ,s e r v i c e sd i s c o v e r ya n ds e r v i c e s i n t e g r a t i o n ,e x p a n d i n gb u s i n e s s - t o - b u s i n e s si n t e r a c t i o n ,s i m p l i f y i n gt h ei n t e r a c t i v ep r o c e s s , s o l v i n gm a n yp r o b l e m st h a tt h ee n t e r p r i s ee n c o u n t e r e d ,i th a sw o n w i d es u p p o r tf r o mt h e i n d u s t r y h o w e v e r ,a st h ee n t e r p r i s e - l e v e lw e b s e r v i c e sb e i n gw i d e l yu s e d ,t h o u s a n d so fn e w w e bs e r v i c e sa r eg e n e r a t e de v e r yd a y t h ed e f e c t so ft r a d i t i o n a lc e n t r a l i z e dm o d e lo fu d d i a r ee m e r g e d s o ,h o wt os o l v et h e s ed e f e c t si sw o r t h yo ff u r t h e rs t u d y p 2 pn e t w o r k sh a v ec h a r a c t e r i s t i c so fg o o dn e t w o r ks c a l a b i l i t ya n df a u l t t o l e r a n c e ,a n dc a l l e n h a n c et h eu t i l i z a t i o no fn e t w o r kb a n d w i d t h s ot h ed e v e l o p m e n to fp 2 pn e t w o r ka p p l i c a t i o n i sa l s os p e e d i n gu p t h i sp a p e rs t a r t sf r o mc o m p a r i n gt h e s es i m i l a rm e c h a n i s m sb e t w e e nt h et r a d i t i o n a lu d d i a n dp 2 pn e t w o r k ,i n t e g r a t i n gt h e s em e c h a n i s m st oi m p r o v et h ed e f e c t so ft r a d i t i o n a lu d d i i m p l e m e n t a t i o n t h ea d v a n t a g e so fu s i n gp 2 p n e t w o r k si st oo v e r c o m et h es h o r t c o m i n g so ft h e t r a d i t i o n a lu d d ii m p l e m e n t a t i o nb yp r o v i d i n gt h ed i s t r i b u t e du d d im e c h a n i s m sb a s e do np 2 p n e t w o r k w i t h o u tc h a n g i n gt ot h ee x i s t i n gw e bs e r v i c e sa r c h i t e c t u r e ,t h ew h o l ed i s t r i b u t e d m e c h a n i s m sa r ei n t r o d u c e di n t ot h ep 2 pc o m m u n i c a t i o nm o d u l ea n dp 2 pn e t w o r k c o m m u n i c a t i o nl a y e ri sa d d e di nt h eu d d is e r v i c er e g i s t r a t i o nc e n t e r s s e r v i c er e g i s t r a t i o n c e n t e r su s et h ep 2 pc o m m u n i c a t i o nm o d u l et og e n e r a t ei n t e r a c t i v es e r v i c er e q u e s ta n dr e a l i z e t h es e r v i c e si n f o r m a t i o ni n t e r a c t i o na m o n gan u m b e ro ft h es e r v i c er e g i s t r a t i o nc e n t e r st h r o u g h t h eu n d e r l y i n gp 2 pn e t w o r k s t h ed i s t r i b u t e du d d ib a s e do np 2 pn e t w o r kp r o v i d eau n i f i e dp o r t a ls i t ef o ra c c e s s i n ga g r o u po fp u b l i ca p i ,a n ds e n db a c kt h es e r v i c er e s p o n s et ot h es e r v i c er e q u e s t o r so rs e r v i c e p r o v i d e r s f i n a l l y ,t h es y s t e m sf u n c t i o nb a s e do np 2 p n e t w o r ka r et e s t e dt ov e r i f yt h e m e c h a n i s mo fd i s t r i b u t e du d d im o d e lb a s e do np 2 pn e t w o r k ,a n df e a s i b i l i t yo ft h e m e c h a n i s m sa r ev a l i d a t e d k e y w o r d s :w e bs e r v i c e s :u d d i ) p 2 p :j x t a n 南京邮电大学硕士研究生学位论文 缩略词 缩略词 缩略词 英文全称译文 x m l e x t e n s i b l em a r k u pl a n g u a g e 可扩展标签语言 w s d lw e b s e r v i c e d e s c r i p t i o n 万维网服务描述语言 l a n g u a g 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 o l简单对象访问协议 u d d iu n i v e r s a ld e s c r i p t i o n ,d i s c o v e r y统一描述、发现和集成协议 a n di n t e g r a t i o n s o as e r v i c e o r i e n t e da r c h i t e c t u r e 面向服务的体系结构 p 2 pp e e r t op e e r 对等网络 t a j u x t a p o s e 通用的p 2 p 网络平台 q o sq u a l i t yo fs e r v i c e 服务质量 w s f lw e bs e r v i c ef l o wl a n g u a g e万维网服务流程语言 h t t p h y p e r t e x tt r a n s f e rp r o t o c o lw w w 服务程序所用的协议 f t pf i l et r a n s f e rp r o t o c o l 文件传送【输】协议 s m t p s i m p l em e s s a g et r a n s f e rp r o t o c o l简单邮件传输协议 w 3 c w r o r 】dw i d ew e bc o n s o r t i u m 万维网联盟 乃z t i m e t ol i v e 生存时间 c o r b ac o m m o no b j e c tr e q u e s tb r o k e r公共对象请求代理体系结构 a r c h i t e c t u r e d c o md i s t r i b u t e d c o m p o n e n to b j e c t分布式组件对象模型 m o d e l g i o pg e n e r a li n t e ro r bp r o t o c o l通用o r b 间互操作协议 o r p c o b j e c tr e m o t ep r o c e s sc a l l 对象远程过程调用 b 2 b b u s i n e s s t o - b u s i n e s s 商家对商家的一种电子商务交 易模式 6 2 南京邮电大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得南京邮电大学或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示了谢意。 研究生签名:盘丑整日期:幽:! :! 南京邮电大学学位论文使用授权声明 南京邮电大学、中国科学技术信息研究所、国家图书馆有权保留 本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其 他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一 致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布 ( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权 南京邮电大学研究生部办理。 研究生签名:七a0 o 师。名t 南京邮电大学硕士研究生学位论文 第一章绪论 第一章绪论 1 1 研究的背景及意义 目前,被业界称为计算机技术的第三次革命( 继p c 和i n t e r a c t 之后) 的万维网服务 ( w ,e bs e r v i c e s ) 技术已经逐渐显露出巨大的商业机会,软件业因此正在酝酿一场巨变, 这种基于x m l 1 】的万维网服务是当今i t 业界的焦点所在,它的主要目的是在现有的各种 异构平台的基础上构筑一个通用的与平台无关,语言无关的技术层,各种不同平台之上的 应用依靠这个技术层来实现彼此的连接和集成。万维网服务在企业级应用中所具有的优势 也越来越明显。 到目前为止,万维网服务技术已经相当成熟,万维网服务的体系结构以及万维网服务 协议栈,许多都已经成为工业界的标准,其中万维网服务描述语言( w s d l 2 】) 描述了万 维网服务的调用接口;简单对象访问协议( s o a p 3 】) 是万维网服务中数据和方法调用传 输的介质;统一描述,发现和集成协议( u d d i 4 】) 是万维网服务环境下核心的服务描述, 发现和集成机制,这些标准基本上解决了如何让计算机系统去理解和使用万维网应用所提 供的服务。 传统的采用集中式实现的u d d i 服务发布和发现机制虽然可以提供整个万维网服务 范围内的服务发布和发现功能,但是在现有的万维网服务环境下,瞬间都有成百上千的服 务需要发布,同时也有很多的服务发现请求需要处理,而这些服务的发布和服务的发现都 需要服务注册中心来完成,这将直接导致传统采用集中式实现的u d d i 机制中的服务注册 中心上的服务注册数据量会越来越大,随着瞬间需要处理的请求数的增加,服务注册中心 极易成为整个万维网服务网络的性能瓶颈,从而导致网络的可扩展性很差。 为了有效解决采用集中式实现的u d d i 中所存在的不足,提高网络的缩放性,容错性, 以及提高网络资源的利用率,就需要对传统的采用集中式实现的u d d i 服务发布和发现机 制进行相应的改进。 1 2 研究的动机 现有的p 2 p 5 1 网络具有很好的网络缩放性、动态性和异构性等优势,因此,目前基于 p 2 p 网络的应用开发也越来越多,比如在线视频点播,b t 下载,分布计算等等,这些应 用都能很好的利用网络资源、带宽。通过研究流行的p 2 p 网络通用平台j x t a 6 7 】【8 】,会 发现其与传统的服务发布和发现机制有一些相似之处: 1 )基于x m l 描述语言:众所周知现有万维网服务的简单对象访问协议s o a p 是基 南京邮电大学硕士研究生学位论文第一章绪论 于x m l 描述语言的,而p 2 p 网络通用平台j x t a 中的通信细节也都是通过x m l 来实现的。 2 )都能实现服务信息的搜集:传统的采用集中式实现的服务发布和发现机制能实 现服务的查询,而p 2 p 网络通用平台j x t a 也可以实现资源的查询,所以两者 都能实现服务或者资源的查询。 但是两者的实现机制却并不相同: 1 ) 服务发布的实现机制不同:现有的万维网服务基本上都是发布于某个服务注册中 心,然后系统会通过数据同步机制把该服务注册中心上的最新服务注册信息复制到 万维网中的所有其他服务注册中心,最终使网络中的所有服务注册中心都拥有该服 务的注册信息;但在p 2 p 网络中,资源首先在本地结点进行发布,然后再把资源 的注册信息转发到其他邻居结点上去进行远程的发布,最终网络中只有部分结点拥 有该资源的注册信息。 2 ) 服务发现的实现机制不同:在现有的万维网环境下,服务请求者只需要链接到任意 一个已知的服务注册中心,即可实现所有注册服务的发现操作;但是在p 2 p 网络 中,对于资源的查询完全是通过网络中结点之间的相互协作来实现服务的发现,因 此现有的万维网服务环境下服务的发现只需一跳( h o p ) ,而在p 2 p 网络中资源的 发现至少需要一跳。 因此不管从技术角度,还是从体系结构的角度来看,都可以把这两种机制进行结合, 利用p 2 p 网络通信机制的长处来改善传统采用集中式实现的服务发布和发现机制的不足。 1 3 国内外研究现状 近些年来,国内外很多研究学者都发现p 2 p 通信网络技术和传统采用集中式实现的 u d d i 服务发布和发现机制具有一定的互补性,因此他们也做了一些相关的研究,比如文 献t g l 提出了在结构化的p 2 p 网络环境下,如何把多维的万维网服务信息映射到网络的物理结 点,通过结构化的p 2 p 网络来提高服务的发现效率。文献【1 0 】【l l 】提出t u d d i 注册联盟,把基 于超级结点的p 2 p 网络模型引入到采用集中式实现的u d d i j 艮务环境中,对于服务的注册进 行了分类管理,分级处理的方法。文献【1 2 1 提出了万维网服务e d u t e l l a p r o x y 层,由它来处理 万维网服务和e d u t e l l a j x t a 之间的交互,保证两者的无缝融合。文献【1 3 】【1 4 j 提出采m p 2 p 网 络来实现服务的发布、发现以及调用,服务都是采用w s d l 的形式来表示,但两篇文章的 侧重点又不同,文献【1 3 1 采用的是混合式的p 2 p 网络结构来实现,而文献【1 4 1 的侧重点在于使 用轻量级的p 2 p s 协议来实现服务的定位和调用。 2 南京邮电大学硕士研究生学位论文 第一章绪论 本文则是把非结构化分散式的p 2 p 网络通信技术应用到传统采用集中式实现的u d d i 模 型中去,来改造传统采用集中式实现的u d d i 模型为基于非结构化分散式p 2 p 网络的分布式 u d d i 模型,分布式u d d i 模型中每个服务注册中心之间都是通过底层的p 2 p 网络通信机制 来实现服务信息的交互。基于非结构化分散式p 2 p 网络的分布式u d d i 模型改善了传统的采 用集中式实现的u d d i 模型中的不足,提高了整个网络的容错性,可靠性,在保证服务的 查准率和查全率的基础上,使网络负载趋于平衡。 1 4 论文的主要工作 传统采用集中式实现的u d d i 在缩放性,容错性等方面存在很大的不足,而非结构化 分散式的p 2 p 网络具有比较好的缩放性,异构性等优势,因此本文尝试把非结构化分散 式的p 2 p 网络通信机制引入到传统采用集中式实现的u d d i 模型中,即基于非结构化分 散式p 2 p 网络的分布式u d d i 模型,此分布式u d d i 模型中的每个服务注册中心对外都 有公共的a p i 入口站点,对外提供相应的服务,服务请求者或者服务提供商可以通过公 共的a p i 入口站点来实现相应的万维网服务发布和发现操作。在基于非结构化分散式p 2 p 网络的分布式u d d i 模型中,每个服务注册中心仅存储了部分万维网服务的注册信息,因 此在处理服务提供商或服务请求者请求的时候,需要分布式u d d i 模型中的多个服务注册 中心共同合作来完成对某服务请求的处理,这里服务注册中心之间的通信细节都是使用底 层的非结构化分散式的p 2 p 网络通信机制来实现的,由于非结构化分散式的p 2 p 网络通 信机制弱化了服务注册中心的作用,同时对于服务的存储位置并没有任何的控制策略,因 此非结构化分散式的p 2 p 网络机制会使网络资源的存储模式从中心化向边缘化转变,使 各个服务注册中心的服务信息量及访问量趋于平衡,有利于充分利用整个网络的带宽资 源,并使网络负载趋于平衡。 论文的主要工作: 从理论上分析传统采用集中式实现的u d d i 模型所存在的不足,研究p 2 p 网络机 制的特点,探讨把p 2 p 网络机制应用到传统采用集中式实现的u d d i 模型中的可 能性。 提出了基于p 2 p 网络的分布式u d d i 的实现模型,并对该模型进行了相应的理论 分析。 提出了基于p 2 p 网络的分布式u d d i 实现模型的具体实现机制,通过引入相应的 p 2 p 通信模块,很好的解决了p 2 p 网络通信机制和传统采用集中式u d d i 的实现 机制的融合,利用服务注册中心之间的协作来对外提供分布式u d d i 的功能。 南京邮电大学硕士研究生学位论文 第一章绪论 通过相应的系统功能测试,证明研究的可行性,证实基于p 2 p 网络的分布式u d d i 模型也能用来实现万维网服务的发布和发现。 1 5 论文的组织结构安排 本文主要分为五章,具体的划分如下: 第二章,论述了万维网服务体协结构中的关键技术,同时也对p 2 p 网络通信机制进 行了相应的介绍。 第三章,提出了基于p 2 p 网络的分布式u d d i 的实现模型,并对该模型进行了理论上 的分析。 第四章,提出了基于p 2 p 网络的分布式u d d i 模型的具体实现机制,解决了两者结合 过程中存在的技术难题,并详细分析了服务发布和发现机制的调用流程,同时提出了数据 同步的解决方案。 第五章,提出了基于p 2 p 网络的分布式u d d i 系统的集成,并通过系统功能测试来验 证基于p 2 p 网络的分布式u d d i 模型的工作机制。 第六章,结束语,总结所做工作并指出所存在的问题及下一步的主要工作。 4 南京邮电大学硕士研究生学位论文第二章研究的理论基础 第二章研究的理论基础 2 1 万维网服务技术1 1 5 i 的介绍 从技术的角度来看,万维网服务可以被认为是一种部署在万维网上的对象( w e b o b j e c t ) ,因此,具有对象技术所承诺的所有优点;同时,万维网服务的基石是以x m l 为 主的、开放的w e b 规范技术,因此,具有比任何现有对象技术更好的开放性。 2 1 1 万维网服务体系架构【1 6 】模型 万维网服务体系结构基于三种角色( 服务提供者、服务注册中心和服务请求者) 之间的 交互。交互具体涉及发布、发现和绑定操作。这些角色和操作一起作用于万维网服务构件: 万维网服务软件模块及其描述。在典型情况下,服务提供者提供可通过网络访问的软件模 块( 万维网服务的一个实现) 。服务请求者使用服务的发现操作从服务注册中心查找服务 描述,然后通过服务描述与服务提供者进行绑定,并调用相应的万维网服务实现,同它交 互。图2 1 展示了这些操作、提供这些的组件以及它们之间的交互。 图2 l 万维网服务体系架构模型 万维网服务体系结构中的角色包括: 服务提供者:从企业的角度看,这是服务的所有者。从体系结构的角度看,这是托管 被访问服务的平台。 服务请求者:从企业的角度看,这是要求满足特定功能的企业。从体系结构的角度看, 这是寻找并调用服务,或启动与服务的交互的应用程序。服务请求者角色可以由浏览 器来担当,由人或无用户界面的程序( 例如另外一个w e b 服务) 来控制它。 服务注册中心:这是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描 述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服务的绑定信 息( 在服务描述中) 。对于静态绑定的服务请求者,服务注册中心是体系结构中的可选角 南京邮电大学硕士研究生学位论文 第二章研究的理论基础 色,因为服务提供者可以把描述直接发送给服务请求者。同样,服务请求者可以从服 务注册中心以外的其它来源得到服务描述,例如本地文件、f t p 站点、w e b 站点。 万维网服务体系结构中的具体操作包括: 发布:为了使服务可访问,需要发布服务描述以使服务请求者可以查找它。发布服务 描述的位置可以根据应用程序的要求而变化。 发现:在发现操作中,服务请求者直接检索服务描述或在服务注册中心中查询所要求 的服务类型。对于服务请求者,可能会在两个不同的生命周期阶段中牵涉到查找操作: 在设计时,为了程序开发而检索服务的接口描述;而在运行时,为了调用而检索服务 的绑定和位置描述。 绑定:最后需要调用服务。在绑定操作中,服务请求者使用服务描述中的绑定细节来 定位、联系和调用服务,从而在运行时调用或启动与服务的交互。 2 1 2 万维网服务协议栈 万维网服务协议栈如表2 1 所示,它从分层的角度描述了万维网服务的整体协议架构, 上一层需要下一层的支持,而且安全性、可管理性、服务质量则需要在各个层次都有所体 现。 表2 1万维网服务协议栈 w o r k f l o ww s f l s e r v i c ed i s c o v e r y , i n t e g r a t i o nu d d i s e r v i c ed e s c r i p t i o nw s d l 兰 o c 巴 兽 电 ( 力 o m e s s a g i n g s o a p 重 。 o 啼 c : o辽 曼 趸 暑 t r a n s p o r t h t t 只f 1 e s m t p o i n t e m e t i p v 4 ,i p v 6 万维网服务协议栈的基础是网络传输层。万维网服务要被服务请求者调用,就必须是 可以通过网络访问的。i n t e r n e t 上可以访问的万维网服务使用已普遍部署的网络协议。 h t t p 凭借其普遍性,成为i n t e r n e t 环境下万维网服务使用的标准网络协议,同时在某 些扩展应用领域,也支持s m t p 协议和f t p 协议。 x m l 是万维网服务的数据编码的标准。x m l 是一种通用的数据表示法,用插入标记的方 法把文本流转化为一个内部结构可能高度复杂的数据对象。它不仅有助于为w e b 描述新 文档的格式,而且也适用于描述结构化的数据。 6 南京邮电大学硕士研究生学位论文第二章研究的理论基础 s o a p 以x m l 标准封装调用远程服务的格式,有别于其它分布式对象模型调用特定的调用 格式,例如c o r b a 的g i o p 以及d c o m 的0 r p c 。由于s o a p 以x m l 封装调用格式,因此它可以 使用任何的实体传输层来传送,例如h t t p ,t c p 或是s m t p 等。 w s d l 定义了服务交互的接口和结构,是基于x m l 的服务描述的标准。w s d l 使用x m l s c h e m a 来描述万维网服务的结构。 u d d i 注册和发布万维网服务,u d d i 使用x m l 计划定义注册表的结构,使用s o a p 与注册表 的通信。 2 2 万维网服务的关键技术 2 2 1 简单对象访问协议s o a p 简单对象访问协议s o a p 是为在一个松散的,分布的环境中使用x m l 对等的交换结 构化、类型化的信息提供了一个简单且轻量级的机制。s o a p 使用x m l 技术来定义一个 可扩展的报文框架,这个报文架提供了一个能在多种下层的协议上进行交换的报文结构。 s o a p 具有可扩展性,能使用多种下层协议,并且独立于编程模型,因此s o a p 报文框架 在异构的环境中可以方便的发送x m l 报文,从而在这些异构的环境中实现其互操作性。 s o a p 由以下四部分组成: s o a p 信封( s o a pe n v e l o p e ) :它构造定义了一个整体的表示框架,定义了一个描 述报文中的内容是什么,是谁发送的,谁应当接受并处理它,以及如何处理它们 的框架。s o a p 报文的框架格式是一个以s o a pe n v e l o p e 为根元素,内含s o a p h e a d e r 和s o a pb o d y 子元素的x m l 文档,s o a p 报文的结构如图2 2 。 7 南京邮电大学硕士研究生学位论文第二章研究的理论基础 s o a p 编码规则( s o a pe n c o d i n gr u l e s ) ,它定义了一个数据的编序机制,通过 这样一个编序机制来定义应用程序中需要使用的数据类型,并可用于交换由这些 应用程序定义的数据类型所衍生的实例。简单的说,就是如何将程序数据表示为 x m l 。 s o a pr p c 表示( s o a pr p cr e p r e s e n t a t i o n ) ,它定义了一个用于表示远端过程调用 和响应的约定。 s o a p 绑定( s o a pb i n d i n g ) ,它定义了一个使用底层传输协议来完成在结点之 间交换s o a p 信封的约定。 虽然这四个部分都作为s o a p 的一部分,作为一个整体定义的,但他们在功能上是 相交的、彼此独立的。特别的,信封和编码规则是被定义在不同的x m l 命名空间 ( n a m e s p a c e ) 中,这样使得定义更加简单。客户端调用万维网服务的执行流程如图2 3 所 示,s o a p 作为一种轻量级的简单对象访问协议在调用万维网服务过程中所起的作用。 8 南京邮电大学硕士研究生学位论文第二章研究的理论基础 ll 图2 - 3 万维网服务服务调用流程 序 序 2 2 2 万维网服务描述语言w s d l 万维网服务描述语言w s d l 是一种x m l 应用,它将万维网服务描述定义为一组服 务访问点,客户端可以通过这些服务访问点对包含面向文档信息或面向过程调用的服务进 行访问( 类似远程过程调用) 。w s d l 首先对访问的操作和访问时使用的请求响应报文进 行抽象描述,然后将其绑定到具体的传输协议和报文格式上,以最终定义具体部署的服务 访问点。相关的具体部署的服务访问点通过组合就成为抽象的万维网服务。 w s d l 文档将万维网服务定义为服务访问点或端口的集合。在w s d l 中,由于服务 访问点和报文的抽象定义已从具体的服务部署或数据格式绑定中分离出来,因此可以对抽 象定义再次使用:报文,指对交换数据的抽象描述;而端口类型,指操作的抽象集合。用 于特定端口类型的具体协议和数据格式规范构成了可以再次使用的绑定。将万维网访问地 址与可再次使用的绑定相关联,可以定义一个端口,而端口的集合则定义为服务。因此 w s d l 文档在万维网服务的定义中使用下列元素。 t y p e s 数据类型定义的容器,它使用某种类型系统( 一般地使用x m ls c h e m a 中 的类型系统) 。 m e s s a g e :通信报文的数据结构的抽象类型化定义。使用t y p e s 所定义的类型来定 义整个消息的数据结构。 o p e r a t i o n :对服务中所支持的操作的抽象描述,一般单个o p e r a t i o n 描述了一个访 问入口的请求响应消息对。 9 南京邮电大学硕士研究生学位论文第二章研究的理论基础 p o r t t y p c :对于某个访问入口点类型所支持的操作的抽象集合,这些操作可以由一 个或多个服务访问点来支持。 b i n d i n g :特定端口类型的具体协议和数据格式规范的绑定。 p o r t :定义为协议数据格式绑定与具体w e b 访问地址组合的单个服务访问点。 s e r v i c e :相关服务访问点的集合。 w s d l 文档分成两部分,第一部分是服务的接口描述文档,另一个是服务的实现描 述文档。 服务的接口描述文档包含服务接口的t y p e s 、i m p o r t 、m e s s a g e 、p o r t t y p e 和 b i n d i n g 等元素。服务接口包含将用于实现一个或多个服务的w s d l 服务定义。它是万维 网服务的抽象定义,并被用于描述某种特定类型的服务。通过使用一个i m p o r t 元素,一 个服务接口文档可以引用另一个服务接口文档。 服务的实现描述文档将包含i m p o r t 和s e r v i c e 元素。服务实现描述文档包含实现一 个服务接口的服务的描述。i m p o r t 元素中至少会有一个将包含对w s d l 服务接口文档的 引用。一个服务实现文档可以包含对多个服务接口文档的引用。服务实现文档中的 i m p o r t 元素包含两个属性,n a m e s p a c e 的属性值是一个与服务接口文档中的 t a r g e t n a m e s p a c e 相匹配的u r l ,l o c a t i o n 属性是一个用于引用包含完整的服务接口定义 的w s d l 文档的u r l :p o r t 元素的b i n d i n g 属性包含对服务接口文档中的某个特定绑定 的引用。 w s d l 服务描述文档的结构图如下图2 - 4 所示: 1 0 南京邮电大学硕士研究生学位论文 第二章研究的理论基础 图2 - 4w s d l 文档的兀素结构图 2 2 3 统一描述、发现与集成协议u d d i 2 2 3 1u d d i 基本概念 统一描述、发现与集成协议u d d i 是一个试图建立全球化的,平台无关的,开放式的 架构的计划,使得企业能:发现彼此;定义如何通过i n t e m e t 交互;使用一个全球 性的商务注册中心,以共享信息,并加速全球b 2 b 的电子商务的应用。 u d d i 本质上是为解决当前在开发基于组件化的万维网服务中所使用的技术方法无 法解决的一些问题。u d d i 具有技术上的简单性,为万维网服务在技术层次提供了三个重 要的支持: 标准化的,透明的,专门描述万维网服务的机制; 调用万维网服务的简单机制; 可访问的万维网服务注册中心; 南京邮电大学硕士研究生学位论文第二章研究的理论基础 2 2 3 2u d d i 数据模型 u d d i 注册使用的核心信息模型由x m ls c h e m a 定义,u d d ix m ls c h e m a 定义了 四种主要的信息类型,它们是技术人员在需要使用合作伙伴所提供的万维网服务时必须了 解的技术信息。它们是:商业实体信息( 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 m o d e l 结构) 。u d d i 注册信息的整 体数据模型关系图如下图2 5 所示: 图2 - 5u d d i 数据模型关系图 商业实体( b u s i n e s s e n t i t y ) :描述了一个提供万维网服务的商业实体或者其他组织,包 含了发布万维网服务的企业或者组织的描述信息,以及它所提供的万维网服务的信息。 业务注册的业务信息发布和发现的核心x m l 元素被包含在这个结构中。这个结构是商 业机构专属信息集的最高管理者,位于整个信息结构的最上层。业务实体信息以 b u s i n e s s k e y 来唯一标识。 服务信息( b u s i n e s s s e r v i c e ) :描述一套由一个作为商业实体的组织所提供的相关的万维 网服务信息,是w e b 服务的技术和商业描述。在逻辑上,是商业实体的子结构。服务 信息以s e r v i c e k e y 来唯一标识。 1 2 南京邮电大学硕士研究生学位论文第二章研究的理论基础 绑定信息( b i n d i n g t e m p l a t e ) :描述使用一个万维网服务所需要的技术信息。每一个绑 定信息指向w e b 服务的一个实例,如一个特定的网络地址。 服务调用规范( t m o d e l ) :描述了一个可重用概念的“技术模型”,如万维网服务的类 型、万维网服务所使用的协议、或者一个分类系统。它是关于调用规范的元数据,它 包括服务名称,发布服务的组织以及指向这些规范本身的u r l 指针。 2 2 3 3u d d i 服务发布机制 在传统采用集中式实现的u d d i 模型中,有专门的服务注册中心,这些服务注册中心 提供服务信息的注册,对外提供一组公共的发布类a p i 入口站点( p o r t a ls i t e ) 。服务提供 商需要通过网络链接到任意一个服务注册中心的操作入口站点,通过相应的身份验证以 后,服务提供商就可以在服务注册中心发布他的服务,以备后续的服务请求者调用。 2 2 3 4u d d i 服务发现机制 在传统的采用集中式实现的u d d i 模型中,服务发现机制也类似于服务的发布机制, 服务的请求者需要通过网络链接到任意一个服务注册中心的发现类a p i 入口站点,这里 并不需要验证服务请求者的身份,服务请求者输入需要搜索的服务的相应关键字,比如服 务的名字、服务的分类信息等等,并触发相应的服务发现过程,当前的服务注册中心会解 析服务请求者发出的s o a p 请求,在内部的服务注册信息库中查询与服务请求相匹配的 服务信息。如果找到相匹配的服务信息,则返回服务的匹配结果;如果没有找到相匹配的 服务信息,则表示当前服务注册中心没有服务请求者所需要的服务。由于在传统的采用集 中式实现的u d d i 模型中,所有的服务注册中心的服务注册信息是统一的,因此如果在某 一个服务注册中心找不到相应的服务,那么就代表整个万维网服务网络中没有服务请求者 所需要的服务注册信息。 2 2 3 5u d d i 数据同步机制 由于服务发布过程中服务提供商只在当前的服务注册中心上发布服务的注册信息,因 此其他服务注册中心上并没有刚才发布服务的注册信息,久而久之,万维网服务网络中的 每一个服务注册中心上的服务数据会不统一。再加上服务请求者在发现服务的过程中,只 是在当前的服务注册中心上进行服务的发现过程,如果当前的服务注册中心上没有之前发 布服务的注册信息,那么系统就认为整个网络中所有的服务注册中心都没有相应的服务注 册信息,但实际上其他服务注册中心上有服务请求者所需要的服务,因此会造成不正确的 查询失败,造成这种结果的原因就在于多服务注册中心上的服务注册信息的不同步。在 u d d i 规范v 3 t 1 7 1 中提出了相应服务的数据同步机制,如下图2 - 6 所示: 南京邮电大学硕士研究生学位论文 第二章研究的理论基础 图2 - 6u d d i 数据同步机制 u d d i 在实施服务注册中心之间的数据同步操作前,首先确定这些需要进行数据同步的 服务注册中心之间的通信图( c o m m u n i c a t i o n g r a p h ) ,其中通信图中的元素如表2 2 所示。 表2 - 2 通信图的内部组成元素 元素含义 n o d e通信图中的结点 c o n t r o l l e dm e s s a g e 控制报文,比如g e t _ c h a n g e r e c o r d s e d g e 设置通信图中结点之间的关系,比如设置两个结点之 间边的属性,其中有三个子元素,m e s s a g e , m e s s a g e s e n d e r ,m e s s a g e r e c e i v e r 确定了通信图,即确定了分布式u d d i 模型中各个服务注册中心之间的数据同步路 径,数据同步机制的执行流程如下所述: 假设服务注册中心d 目前有更新的服务注册信息,它会发送相应的 n o t i f y 报文,监昕到这个报文的服务注册中心a 会通过相应的 g e l c h c a h n a g n e g r e e r c o e c r d o s r d 报s a 文v 从a i l 服a b 务l e 注册中心d 中获取到这个更新的服务注册信息,然后进行 判断,确定其有效性以后,再将更新的服务注册信息写入到本地注册库中,服务注册中心 b 采取同样的方法从服务注册中心a 获取到更新的注册信息,同时也判断其有效性,如果经 过判断,觉得这个来自服务注册中心a 的有效性存在问题的时候,结点b 会增加一跳,从结 点a 的上一跳,即结点d 中获取到这个更新的注册信息,如果还是检查有问题的话,再增加 一跳,进行更新信息的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 演出补充协议合同范本
- 直播基地建设合同范本
- 直播公会转让合同范本
- 酒店保安聘请合同范本
- 礼品木盒采购合同范本
- 酒店劳动试用合同范本
- 酒店品牌宣传合同范本
- 祠堂木材加工合同范本
- 潍坊租赁土地合同范本
- 租房改造锯床合同范本
- 2023年延安市安塞区社区工作者招聘考试真题
- 驾校教练员安全培训
- 全国主要水文站点及雨量观测分布和代码
- 2023年贵州省遵义市中考地理试卷真题(含答案)
- 儿童文学教程第2版(学前教育专业)PPT全套完整教学课件
- 中国绿色建筑三星认证标准
- 《领导力》读书笔记
- 作业中断管理规定
- 2023年江苏省初中物理竞赛试卷
- GB/T 23261-2009石材用建筑密封胶
- GB/T 20967-2007无损检测目视检测总则
评论
0/150
提交评论