(计算机科学与技术专业论文)corba服务与web服务的比较与实现.pdf_第1页
(计算机科学与技术专业论文)corba服务与web服务的比较与实现.pdf_第2页
(计算机科学与技术专业论文)corba服务与web服务的比较与实现.pdf_第3页
(计算机科学与技术专业论文)corba服务与web服务的比较与实现.pdf_第4页
(计算机科学与技术专业论文)corba服务与web服务的比较与实现.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(计算机科学与技术专业论文)corba服务与web服务的比较与实现.pdf.pdf 免费下载

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

文档简介

煳雠 独创性声明 本人声明,所呈交的论文是本人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 武汉理工大学或其他教育机构的学位或证书而使用过的材料。与我一 同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示了谢意。 洲f $ 7 学位论文使用授权书 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即 学校有权保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权武汉理工大学可以将本学位论文的 全部内容编入有关数据库进行检索,可以采用影印、缩印或其他复制 手段保存或汇编本学位论文。同时授权经武汉理工大学认可的国家有 关机构或论文数据库使用或收录本学位论文,并向社会公众提供信息 服务。 ( 保密的论文在解密后应遵守此规定) 研究生( 签名) :垒! 空竖导师( 签名) 日期逊尹 摘要 分布式对象技术是伴随网络而发展起来的一种面向对象技术,是分布式计 算技术与面向对象技术的结合。分布式对象技术研究分布在网络上的各个节点 对象如何写作,共同完成任务。o m g 组织制定了c o r b a 规范,旨在统一异构系统 之间的互操作,提出了搿软总线一的概念,实现软件总线的“即插即用,从而 提高软件的可移植性、可重用性和互操作性。为了解决由于分布和异构带来的 “孤岛 问题,o m g 组织提出了公共对象请求代理体系结构,以增强软件系统间 的互操作能力,实现企业内各信息系统有效集成。分布式对象计算实现了对象 间透明的互操作,解决了企业中的很多问题,已经在通信、金融等行业得到广 泛的应用。分布式计算技术是实现分布式系统的关键,新兴起的w e b 技术可以 轻松克服传统分布对象技术的缺陷,从而构造出新一代的分布式应用系统。在 s o a 的思想下,根据企业内部,企业与企业之间的流程整合现有的资源,真正达 到跨平台、跨语言、跨网络的集成目的,成为i t 行业一个重要课题。 c o r b a 在解决企业级的问题中具有解决复杂问题能力,效率高、透明度大、 安全性高等特点是w e bs e r v i c e s 所不具备的,然而w e bs e r v i c e s 可以自由穿 越防火墙的能力也是c o r b a 所不具备的。因而,在互联网的时代解决分布式的 问题,将研究两者的集成技术是一个很好的方向,也是技术发展的必然。 本论文主要在以下几个方面展开研究工作: 首先研究已有的集成框架,分析比较传统的集成框架间的优缺点,在此基 础上提出一个可行的c o r b a w e bs e r v i c e s 集成框架,为企业利用c o r b a 服务提 供行之有效的解决方案。 其次研究c o r b a w e bs e r v i c e s 互操作网关,试图从i i o p 协议和s o a p 协议 之间的通信入手解决方案,并且实现互操作网关。 然后分析新的集成网关框架的性能与效率,以及新的集成系统较之传统的 集成方案的优越性。 最后将新的集成系统应用在现代金融服务系统。 关键字:分布式,c o p b a ,w e bs e i c 岱,s o a p i i o p a b s t r a c t d i s t r i b u t e do b j e c tt e c h n o l o g yi sak i n do f o b j e c t - o r i e n t e dt e c h n o l o g yd e v e l o p e d w i mn e t w o r kw h i c hi sd i s t r i b u t e dc o m p u t i n gt e c h n o l o g ya n dt h ec o m b i n a t i o no f o b j e c t - o r i e n t e dt e c h n o l o g y d i s t r i b u t e do b j e c tt e c h n o l o g yr e s e a r c hi ne a c hn o d e d i s t r i b u t e di nt h en e t w o r kh o wt ow r i t i n g , c o m m o no b j e c t sh o wt oc o m p l e t et h et a s k 硼托o m go r g a n i z a t i o nh a sf o r m u l a t e dt h ec o r b as t a n d a r d , i sf o rt h ep u r p o s eo f u n i f y i n gt h ei n t e r o p e r a b i l i t yb e t w e e ni s o m e r i s ms y s t e m ,p u tf o r w a r dt h ec o n c e p to f ”s o rb u s 什a n di m p l e m e n t e dt h ef e a t u r eo fs o f t w a r eb u si n ”p l u ga n dp l a y 竹,s oa st o i m p r o v et h es o r w a r ep o r t a b i l i t y , r e u s a b i l i t ya n di n t e r o p e r a b i l i t y i no r d e rt os o l v et h e d i s t r i b u t i o na n dh e t e r o g e n e o u sb r i n g sn i s l a n d 竹p r o b l e m , o m go r g a n i z a t i o n sp u t f o r w a r dc o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ,t oe n h a n c et h es o f t w a r e i n t e r o p e r a b i l i t y b e t w e e n s y s t e m s , a n dr e a l i z e t h ei n f o r m a t i o ns y s t e m e f f e c t i v e i n t e g r a t i o nw i t h i nt h ee n t e r p r i s e d i s t r i b u t e do b j e c tc a l c u l a t i o nh a sb e e nw i d e l y u s e di nc o m m u n i c a t i o na n df i n a n c ei n d u s t r y , r e a l i z e dt h eo b j e c to fi n t e r o p e r a b i l i t y b e t 、 ,e e nt r a n s p a r e n ta n ds o l v e dt h em a n yp r o b l e m si ne n t e r p r i s e s d i s t r i b u t e d c o m p u t i n gt e c h n o l o g yi st h ek e y t or e a l i z i n gd i s t r i b u t i n gs y s t e m , w e bt e c h n o l o g yc a n e a s i l yo v e r c o m et h ed e f e c t so f t r a d i t i o n a ld i s t r i b u t e do b j e c tt e c h n o l o g y a c c o r d i n gt o i n t e r n a l ,c o r p o r a t ea n db u s i n e s sp r o c e s si n t e g r a t i o nb e t w e e nt h ee x i s t i n gr e s o u r c e s ,t o r e a l l yc r o s s p l a t f o r m ,e r o s s l a n g u a g ei n t e g r a t i o na c r o s st h en e t w o r ka i m st ob e c o m e a ni m p o r t a n ti s s u ei ti n d u s t r y i no r d e rt os o l v et h ep r o b l e mo fe n t e r p r i s e ,c o r b ah a sa b i l i t yt os o l v ec o m p l e x p r o b l e m s ,h i g he f f i c i e n c y , t r a n s p a r e n c yb i g , s a f e t yh i g h e rc h a r a c t e r i s t i c ,b u tw e b s e r v i c e sd on o th a v et h i sf e a t u r e , w h i l ew e bs e r v i c e sh a v et h ef r e e d o mt ot r a v e r s et h e f i r e w a l lc a p a b i l i t i e sb u tc o r b ad on o th a v et h i sf e a t u r e t h e r e f o r e ,i nt h ea g eo ft h e i n t e m e t ,s o l v i n gd i s t r i b u t e dr e s e a r c hb o t hi n t e g r a t i o nt e c h n o l o g yi s av e r yg o o d d i r e c t i o n ,a l s oi st h en e c e s s i t yo ft h ed e v e l o p m e n to ft e c h n o l o g y i nt h i st h e s i s ,w e s t u d yi n t h ef o l l o w i n ga r e a so fw o r k : w e s t u d y t h e e x i s t i n gf r a m o w o 氐a n dc o m p a r e t h e a d v a n t a g e s a n d d i s a d v a n t a g e sb e t w e e nt h ev a r i o u si n t e g r a t i o nf r a m e w o r k s ,a n dp u tf o r w a r da f e a s i b l e o fc o r b a 厂w r e bs e r v i c e sf o ri n t e g r a t e df r a m e w o r k , u s i n gc o r b as e r v i st op r o v i d e e f f e c t i v es o l u t i o n sf o re n t e r p r i s e s f o c u s e d0 1 1t h er e s e a r c ho fc o r b 入翮南s e r v i c e s f o ri n t e r o p e r a b i l i t yg a t e w a y , w et r yt os t u d yi ni i o pa g r e e m e n ta n ds o a pa 蓼e e m e n t f t o mt h ec o m m u n i c a t i o nb e t w e e nt h es o l u t i o n , a n dr e a l i z a t i o no fi n t e r o p e r a b i l i t y g a t e w a y s t h e nw ea n a l y s i st h ep e r f o r m a n c eo ft h en e wi n t e g r a t e dg a t e w a yf r a m e w o r ki n t h ea s p c c t t $ o fe f f i c i e n c ya n da n a l y s i st h en e wm t e g r a t e ds y s t e mc o m i p a r e dt ot h e t r a d i t i o n a ls u p e r i o r i t yo fi n t e g r a t i o ns o l u t i o n s a tl a s tt h en e wi m e g r a t e ds y s t e mw a su s e di nm o d e mf i n a n c i a ls e r v i c es y s t e m a n dr e a l i z e d k e yw o r d s :d i s t r i b u t e d ,c o r b a ,w e bs e r v i c e s ,s o a p i i o p i l l 目录 摘要i a b s t r a c t i i 第l 章绪论。l 1 1 课题背景l 1 2 论文研究内容。2 1 3 论文组织结构:2 第2 章理论基础知识4 2 1c o r b a 介绍4 2 1 1 对象请求代理体系结构4 2 1 2c o r b a 技术分析7 2 2 k bs 盯v i c 岱简介。8 2 2 1w e bs e r v i c e s 的定义。8 2 2 2w 曲s e r “c 潞协议栈8 2 2 3w e b $ e i v i o l 烙通信1 l 2 3c o i m a 与w 曲s e r v i c e s 比较与分析。1 2 2 4 本章小结15 第3 章c o r b a 与w e bs a r a r i c c s 集成方案的研究l6 3 1c o r b a 与w 曲s e r v i c e s 集成的必然性1 6 3 2c o r b a 和w 曲s e r v i c e s 的传统集成方案1 6 3 2 1 通过c g i 服务的集成技术1 6 3 2 2 客户端嵌入模式18 3 3s o a p i i o p 集成网关方案2 0 3 3 1 该种集成方案的合理性2 0 3 3 2s o a p i i o p 集成技术体系结构2 0 3 3 3 集成方案工作原理2 l 3 3 4s o a p i i o p 集成方案分析2 2 3 4 本章小结2 3 第4 章集成网关的具体实现。2 4 4 1 集成网关系统分析2 4 4 2 体系结构2 5 4 3 进行i d l 2 w s d l 编译器的设计2 6 4 3 1 讨论i d l 和w s d l 之间的区别2 6 4 3 2i d l 到w s d l s o a p 转换及互操作规范2 6 4 3 3i d l 2 w s d l 编译器交互执行3 0 4 4 集成网关设计。3 2 4 4 1 集成网关对消息的接受与返还机制3 4 4 4 2c o i 国a 对象调用和c o r b a 对象定位3 5 4 5 系统开发工具和开发环境的介绍3 7 4 6 本章小结3 9 第5 章c o r b a w e b 在金融系统中的应用4 0 5 1 金融服务系统介绍4 0 5 1 1 自助服务银行一4 0 5 1 2 自助服务银行系统介绍4 0 5 1 3 分析已有的金融服务系统的体系结构4 l 5 1 4 分析现存金融系统的不足4 2 5 2 将c o i m w 曲s e r v i c e s 分布式技术应用到金融服务4 3 5 3 现代金融系统的设计以及实现。4 4 5 3 1 分布式面向对象技术分析与建立模型4 4 5 3 2 设计系统4 5 5 3 3 设计c o r b a 对象的部分代码4 7 5 4 分析基于s o a p i i o p 集成网关的金融系统的特点5 2 5 5 本章小结5 3 第6 章结论与展望5 4 6 1 全文总结5 4 6 2 工作展望5 4 致谢! ;6 参考文献5 7 武汉理工大学硕士学位论文 1 1 课题背景 第1 章绪论 在充分竞争的市场环境中,各个公司为了在保持住很好的发展前景,他们 正在依靠不断发展的信息技术来减短产品的研发周期、提高效率和降低成本。 各个企业在实施标准化的过程中,为了适应差异化的业务需求,往往投入大量 的财力和人力来构建适合公司发展的平台系统。可惜的是,企业所用的业务系 统往往由不同的厂家组合提供,而组建起来的系统往往是基于不同的技术、操 作系统、网络通讯协议等等,以至于这些业务系统成为了名存实亡的信息孤岛, 他们之间独立运行,但是难以实现数据的通信共享。因此,企业急切需要一个 屏蔽异构的平台环境,对现有的系统进行有效的整合与集成应用。 在解决由于异构等方面带来的麻烦,o m g 组织提出了c o r b a ( 公共对象请求 代理体系结构) ,以加大软件各系统间的交互能力,实现企业异构系统的有效的 集成。c o r b a 的工作是提供标准化的对象请求代理,屏蔽异构的操作系统以及网 络协议等,使得在网络上分布的各个系统能协同合作。经过若干年的发展,c o r b a 已经发展为一个成熟的标准规范,提供了一套面向对象的构件结构,并且c o r b a 在容错和负载平衡方面表现出很大的活力。由于网络的普及,人们开始逐步关 心网络的安全问题,可喜的是,c o r b a 在安全服务方面同样值得称赞,并且数据 完整传播出错率极低。近来,一些对实时性要求比较高的行业领域也可以见到 c o r b a 的身影,比如金融服务、航空领域、电信行业以及电子商务等等。 虽然c o r b a 具有很多优点,但是它也有其自身的缺陷: 1 )防火墙间通信。处于安全考虑,各个系统都安装的防火墙以期来保 护系统的安全运行,以免遭受恶意攻击。为了感应浏览器的请求,h t t p 协议被 防火墙默认,然而,o r b 之间的通信要依靠i i o p 协议,防火墙没有配置对i i o p 协议的允许,所以在现有的条件下,c o r b a 服务器直接应用在i n t e r n e t 网络环 境中是行不通的。 2 )效率问题。c o r b a 用户曾经试图改变防火墙的配置来接受c o r b ai i o p 间的通信,以期实现系统间的集成,但是这个方法工作量比较大,实现起来效 率太低。 武汉理工大学硕士学位论文 3 )系统耦合。o r b 之间的通信必须是紧密耦合,也就是说通信的o r b 基本结构必须是相同的,这也就限制了各个c o r b a 客户端在i n t e r n e t 这个大的 分布式大环境中的广泛应用。 近十几年,全球经济一体化的大潮滚滚而来,各个企业间的竞争已经到了 白热化的地步,伴随i n t e r n e t 和电子商务的不断发展和实际引用,企业逐渐认 识到i n t e r n e t 这个廉价的平台可以改善供应链的不断完善,使得企业间的商业 流程不断的得到改善,为企业的发展注入新鲜的血液,带来了新的增长点。因 此,应用集成不在局限在企业内部局域网,企业间的广域网应用集成变的越来 越重要。挡在企业面前的障碍无非是系统之间异构和异构系统在i n t e r n e t 上自 由的交互两方面问题,我们可以通过研究c o r b a 和w e bs e r v i c e s 之间的集成技 术来解决上述的问题,以期搭建一个与操作系统、网络协议、编程语言等无关 的通用的平台,使得在平台上的各种应用能够互相进行通信与连接,为企业的 发展带来新的机遇。 1 2 论文研究内容 为了在不改变已有环境的前提下实现各个企业的异构系统通信,本论文主 要解决以下的问题:在现有的防火墙不允许i i o p 协议的条件下,怎么把c o r b a 服务嵌入到i n t e r n e t 中去,以便企业能够方便的使用到c o r b a 服务。 本论文主要在以下几个方面展开研究工作: 1 )研究已有的集成框架,分析比较传统集成框架问的优缺点,在此基础 上提出一个可行的c o r b a w e bs e r v i c e s 集成框架,为企业利用c o r b a 服务提供 行之有效的解决方案。 2 )研究c o r 队w e bs e r v i c e s 互操作网关,试图从i i o p 协议和s o a p 协 议之间的通信入手解决方案,并且实现互操作网关。 3 ) 分析新的框架性能与效率。 1 3 论文组织结构 本论文分为六章,各章的内容: 第一章绪论部分,首先分析了c o r b a 服务在企业应用中的优缺点,接着引 出了论文需要做的工作。 2 现。 第二章介 第三章比 第四章对 第五章将 第六章对 武汉理工大学硕士学位论文 第2 章理论基础知识 本论文对本论文涉及到的相关概念、技术进行介绍 2 1c o r b a 介绍 分布对象计算技术伴随着网络和面向对象技术的发展得到了广泛应用【l 】,异 构性是分布式对象技术处理的课题,在一个普通的分布式的环境中,大型机、 工作站、微型服务器、个人电脑都包括在里面,而且各个机器所采用的操作系 统以及机器之间采用的通信协议也是各不相同的,在这种环境下,实现交互的 流畅性以及数据的共享是很困难的。如果分布式环境比较健壮,上述的问题将 得到解决。正是在这样的背景下,o m g ( o b j e c tm a n a g e m e n tg r o u p ) 指定的c o r b a 规范诞生了,将面向对象技术应用到分布式计算中,通过定义和实现无关的接 口,引入分离客户端和服务器的机制,使得c o r b a 成为了受人欢迎的解决异构 难题的标准化规范。 2 1 1 对象请求代理体系结构 对象请求代理o r b 是c o r b a 的核心机制,o r b 提供的通信机制负责查找面向 请求的对象实现、通知对象实现接受请求、传递构成请求服务的数据等任务。 客户程序看到的对象接口相对于对象实现的地址完全独立、编写对象实现的程 序设计代码,以及在对象接口中未能反映出的其他特性,o r b 体系如图2 1 所示 4 武汉理工大学硕士学位论文 匿嚣妥盈对所有o r b 实现都相同的接i z l _ 向上调用的接口 n i i i i i i i l l l 可能有多个对象适配器妙常规调用的接i z l 惑阏潮每一对象类型都有桩和框架 i i i i i i i i i i i i i i i i i i i 依赖于o r b 具体实现的接口 图2 1o r b 体系结构 1 )对象接口和i d l 语言 客户程序与对象实现之间的界面是对象的接口【2 】,对象接口将客户程序与服 务程序链接起来进行通信。对象接口采用o m g 组织定义的的接口描述型语言i d l 描述,i d l 语言根据对象可执行的各种操作定义对象的类型,并可映射到某种特 定的程序设计语言或者对象服务系统。为在运行时充分利用对象接口定义的相 关信息,包括提供或使用的操作名字、参数表、返回结果、异常表、上下文等, 客户程序和对象实现都必须严格遵守这些信息的一致性,只有这样才能保证客 户方与服务方的顺利通信。i d l 是一种独立于具体程序设计语言的抽象的说明性 语言,i d l 编译器的作用是将i d l 描述的各种类型以及对象间的操作映射到具 体的编程语言,产生客户程序使用的桩以及编写对象实现所需要的代码。由o m g 编写的到具体的程序设计语言映射规则支持将i d l 语言映射到j a v a 、c + + 、c o b o l 、 c 、a d a 等多种程序设计语言。 2 )桩和构架 桩可以比作成现实对象在客户进程传递中的映像,用到的接口是事先定义 好的,在进程中客户方采用的是静态调用接口方式。与桩对应的构架,采用静 5 武汉理工大学硕士学位论文 态实现的方式服务于服务器。i d l 编译器解释对象接口的i d l 文件,映射成具体 程序设计语言的i d l 桩和i d l 构架,桩负责对客户程序的请求编码,发给程序 实现端,接受结果并进行解释说明,之后发给客户程序结果或者异常。恰好反 过来,构架对发送请求的客户程序进行解码,寻找目标对象并处理对象的方法, 方法执行完把结果或者异常返还客户程序。 3 )动态调用接口方法和动态构架接口 与静态调用不同,动态调用接口允许客户程序在不明确i d l 接口类型时编 写客户程序,该机制通常在运行时调用接口库服务中信息创建一个服务请求对 象,如果希望客户程序能发现新的对象类型而无需重新编译并部署应用程序, 则一般选择使用动态调用接口方法。由于在一个典型的动态调用应用程序中, 动态调用通常需要访问接口库提供的对象接口信息用于创建请求并保证类型的 安全性,所以绝大多数使用动态的应用程序在性能方面要逊色于静态调用方式。 4 )o r b 内核 o r b ( 对象请求代理) 是c o r b a 的核心组件,它提供了认知和锁定对象、管理 连接、传送请求数据和请求调用通信所必须的框架结构,可以为应用服务程序、 服务器、网络设备之间分组分发消息提供通信通道,可以将o r b 想象成一组软 件通道总线,它提供了一个公共消息传递通道,通过这个渠道,许多不同类型 的服务对象以对等层身份进行通信。 5 )对象适配器 服务程序的主要作用是通过对象实现建立伺服对象实体,然后将这些服务 器端对象实体转换成提供用于远程调用的c o r b a 对象,由客户程序检验对象标 志并映射到相对应的c o r b a 对象引用后,调用该对象提供的各种应用服务。应 用程序开发人员用于管理服务端对象标志、伺服对象、c o r b a 对象以及他们之间 的桥梁工具:对象适配器。 6 )接口库 o m gi d l 描述了一系列的常量、模块、异常、接口、类型、值类型等,这些 描述放在一个i d l 文档文件中。有一个专门的进程来管理对象接口定义,即把 i d l 文件中的对象接口定义组织成可运行的接口库服务,由该服务提供对象接口 的相关消息。如果接口库传达的信息与i d l 文件描述的信息完全相同,只是这 些信息被组织为适合客户程序或服务对象实现在运行过程中可动态访问的,所 以可以把接口库看作是关于c o r b a 对象的元素的数据库。接口库经常被用去查 找一个对象引用的符合要求的i d l 接口。客户程序或对象实现利用接口库获取 6 武汉理工大学硕士学位论文 一个编译时的对象应用的接口信息,以便更好的使用动态调用接口 7 )g 1 0 p 和i i o p c o r b a 规范将g i o p 定义为它的互用性框架【3 1 。它被用于满足各个种类的o r b 之间交互通信的需求,并被设计成可在任何传输协议的上层工作,只需需这些 通讯协议满足g i o p 传输协议的最小子集。g i o p 标准主要由下面部分组成: 1 ) 传输假设:对适用g i o p 协议的底层传输做了很多假设【4 j 2 ) 公用数据表示:g i o p 为i d l 数据类型定义了相应格式,这样发送请求者 和服务请求接收者在二进制的形式下保持一致 3 ) g i o p 规范了客户程序和服务程序通信使用的8 中类型。只有两种用来实 现远程过程调用。 o m g 还规范了在t c p i p 协议为基础怎么去实现g i o p 协议: i i o p 。 2 1 2c o r b a 技术分析 c o r b a 在引入面向对象技术后,在分布对象技术中逐渐成为很有影响力的工 业规范,它自生具有的特点: 1 )引入分布对象技术后,改善了软件复用率,提高了效率。 2 )提供了o r b 机制,出现软件总线概念后,在开发大型程序时,可以 很好的分模块分进度设计,使得修改也变得容易许多,因为o r b 实现了“即插 即用一功能,新开发的复合标准的程序可以很好的结合到c o r b a 系统中去。 3 )客户程序和服务器程序完全独立,在动态调用方式下,服务器程序 可以适当的修改或者升级,客户程序也可以适当的修改或者升级,在这个过程 中双方都无需事前告知对方,这样为程序员带来了很大的便捷性,他只需要专 注于要改进的模块而无需去关心调用该模块的调用者。 4 )屏蔽异构的操作系统、编程语言等,搭建好平台,使得不能通信的 资源进行通信变的可能,为企业内部异构环境下通信以及企业间异构环境下进 行通信变的肯能。 5 )安全性比较高 7 武汉理工大学硕士学位论文 2 2w e bs e r v i c e s 简介 2 2 1w 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 :松散耦合的组件,他们通过标准的协议相互联系。狭 义上来定义w e bs e r v i c e :有i b m 、m i c r o s o f t 等公司联合推动的一种新型分布 式计算技术。虽然没有形成一个大家共识的一个定义,不过w e bs e r v i c e 通过 层次来看属于客户机服务器两层结构,允许不同的客户程序可以进行通信,只 要遵守标准的配置文件,所以可以这样说,w e bs e r v i c e 是一种被广泛应用的分 布式技术。 2 2 2w e bs e r v i c e s 协议栈 为了在w e bs e r v i c e s 5 l 这种分布式技术中进行一些对象的访问,以及在某 些访问对象上进行一些操作:工作流、安全机制等。w e bs e r v i c e s 体系结构采 用如表2 2 的协议规范: 工作流程 b p e l 4 w s 互 。 萎星 服务发现与集成u d d i 翟 罢 2 服务描述w s d l 曼 畜 消息发送s o a p 莹 塞 传输协议 h t t pm s m a p 表2 2w e bs e r v i c e s 体系结构协议栈 在体系结构的协议栈中可以很明晰的看出,w e bs e r v i c e s 体系使用了分层 思想,下一层协议为上一层协议提供服务,换句话说上一层协议采用下一层协 议的服务,最右边的三个协议是左边所有协议所必需遵守的规范。一下逐点介 绍协议栈中各层的内容。 ( 1 ) h t t p 协议介绍 h t t p 是一种超文本传输规范,客户程序如最常见的浏览器访问浏览器时遵 守的协议,当然服务器返回结果也必须遵守h t t p 协议,是客户端与服务器端进 行通信的一种契约。h t t p 是目前因特网上最为常见的也是应用最为广泛的通讯 8 武汉理工大学硕士学位论文 协议,可以使互联网上的多种资源得到共享,建立了一个典型的分布式环境。 ( 2 ) s o a p 协议 由w 3 c 发布的简单对象访问协议s o a p 规范是w e b 服务使用的标准通信协议, 它是一种轻量的、简单的、基于x 肌的协议,被设计成在w e b 上交换结构化的 和固化的信息,并且s o a p 可以和现存的许多因特网通讯协议和格式一起使用, 比如超文本协议h t t p ,简单邮件传输协议一m t p ,多用途网际邮件扩充协议 圳i m e 等等,还支持从消息系统到远程过程调用等大批的应用。 s o a p 结构包括四个部分【6 】: 1 )s o a p 封装:定义一个框架,该框架解释了框架中装有什么内容,而 且明确处理它的对象主体以及处理该内容的必要性。 2 )s o a p 编码规范:定义了一个序列化的规范,应用在与应用程序进行 通信时应用程序中的数据类型实例。 3 )s o a p 远程调用过程:定义了远程调用过程的映射以及反馈时遵守的 通讯协议。 4 )s o a p 绑定:定义了s o a p 封装在节点之间互换时遵守的协议,并 且这种交换是在底层传输协议的层面上来完成的。 图2 3 表示的是完整的s o a p 的消息结构 图2 3s o a p 消息结构 其中s o a p 标题用来传达底层的服务信息,s o a p 主体包含用于交换所用到的 一些相关信息,就是前面所讲到的s o a p 编码规则、s o a p 远程调用过程、s o a p 绑定等,其中s o a p 绑定中我们最常用到的是s o a p h t t p 的协议绑定。s o a p 只是 描述了一个机制,其自身并没有提出应用的表达语义,它通过封装模块化的模 9 武汉理工大学硕士学位论文 型以及对模型中特殊数据的重新编码原理来描述应用语义。s o a p 目前拥有基于 x m l 远程调用过程和基于x m l 编码这两种信息互换的途径。在s o a p 应用程序中 产生的s o a p 消息里面包含这样几个基本要素:不许存在s o a p 封装和s o a p 主体, 对于s o a p 要求没有那么严格,可有可无。s o a p 的发送采用消息路径的方式,也 就是说消息到达终点前的任何一个中间节点也可以处理该消息。s o a p 这种消息 传递机制很好适应分布式计算的环境,通过消息路径的处理机制,使得在消息 到达终点前的任何一个中间某个节点都有能力处理该消息。为了保证在这种机 制下消息传递的完整性以及正确性,中间的处理器必须很好的理解这种交换的 方式。 s o a p 具备很多的优点: 1 )可扩展性强。s o a p 在不中断已有的应用程序情况下,s o a p 客户端、 服务器端以及协议都能独立的改善和升级。 2 )流畅性好。客户端与通信端进行通信使用的方式是消息的请求反馈 机制,进行通信的的消息是x m l 格式,封装成的模块遵守h t t p 协议,因此能很 自由的在各个路由器和防火墙间传达。 3 )独立性强。s o a p 独立于平台、操作系统和编程语言,换句话说,s o a p 可以在任何操作系统中运行,可以用任何程序设计语言编写完成,这一点为在 分布式技术中的应用带来了很大的方便。 ( 3 ) w e bs e r v i c e s 描述语言 w e bs e r v i c e s 描述语言简称w s d l 是s d l 语言和n a s s l 语言的综合体,用来 专门描述w e bs e r v i c e s 和说明怎样与w e bs e r v i c e s 通信的语言,自身可以进 行扩展。w s d l 通过节点定义某个或者多个w e bs e r v i c e s ,每个节点指向一个特 定的u r l ,客户端通过访问u r l 来达到访问那个w e bs e r v i c e s 的目的。每个节 点都绑定一个相关联的端口,与端口对应的是访问不同w e bs e r v i c e s 时所要遵 守的某个通讯协议。这些节点对消息进行必要的操作,之后这些操作和该消息 经过抽象描述嵌入到端口指定的通讯协议和消息格式中。可重用捆绑由代表端 口类型的具体协议以及数据格式规范组成,某个网络地址以及相关联的可重用 捆绑又组成了一个端口。w s d l 编写的x m l 文档中有一个总的概括,在其中通过 使用类型、绑定、消息、端口、端口类型等元素定义w e bs e r v i c e s 的功能、绑 定协议、数据类型、终端以及调用接口等。使用w s d l 构造x m l 文档的过程大致 如下:对w e bs e r v i c e s 支持的操作定义相应的类型,通过这些类型来搭建被这 些操作引用的消息,之后将消息和具体操作封装,然后绑定操作和端点,这也 1 0 武汉理工大学硕士学位论文 就固定了数据格式和被链接的端点的地址。 ( 4 ) u 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 n ,d i s c o v e r ya n di n t e g r a t i o n ) ,通用描 述,发现和集成服务是由m i c r o s o f t 和a r i b a 提出的一套基于s o a p 的标准协议 它提供的机制使得企业可以注册自身的w e bs e r v i c e s ,并且其他企业能够发现 该公司的w e bs e r v i c e s 。u d d i 不仅描述w e bs e r v i c e s 而且给出了一个编程接 口,这个编程接口提供了一个框架,它可以用来表示w e bs e r v i c e s 并且使得发 布者通过技术被请求者定位。在这个规范中,包含几个文档和一个标准,这个 x m l s c h e m a 刀标准用来描述s o a p 的注册以及定位w e bs e r v i c e s 。s c h e m a 描述了 u d d i 核心模型,主要包括四类信息模型:w e bs e r v i c e s 供给者的基本信息、在 标准分类法框架下的企业提供的w e bs e r v i c e s 信息、服务所在的端口地址以及 服务调用标准规范。 2 2 3w | e bs e r v i c e s 通信 服务提供、服务请求、服务注册是w e bs e r v i c e s 体系结构中三个基本元素, 这三个基本角色问的操作是,发布、查找和绑定。他们之间的结构如图2 4 图2 4w e bs e r v i c e s 体系结构 ( 1 ) 提供者 服务提供者是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 ,以便所有使用该服务的请求者能够识别该服务;其次,为了 使得该服务得到更广泛的传播,该服务的提供者应该把该项服务的有关的详细 信息链接到所有请求者都能使用的注册中心。 武汉理工大学硕士学位论文 ( 2 ) 请求者 任何应用某个w e bs e r v i c e s 的企业或者个人都是w e bs e r v i c e s 消费者, 在服务者提供的众多服务中,消费者总能找到适合自己的那项服务。寻找该项 服务的第一步,消费者要到注册表中去筛选,根据那项服务的具体描述,在注 册表中就能找到与之绑定的那项服务了,然后再调用该服务,消费者就可以使 用该项服务了。 ( 3 ) 注册表 注册表相当于一个中介机

温馨提示

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

评论

0/150

提交评论