(计算机应用技术专业论文)分布式数据访问方法性能的研究.pdf_第1页
(计算机应用技术专业论文)分布式数据访问方法性能的研究.pdf_第2页
(计算机应用技术专业论文)分布式数据访问方法性能的研究.pdf_第3页
(计算机应用技术专业论文)分布式数据访问方法性能的研究.pdf_第4页
(计算机应用技术专业论文)分布式数据访问方法性能的研究.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机应用技术专业论文)分布式数据访问方法性能的研究.pdf.pdf 免费下载

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

文档简介

焉士论文分布式t 据访月方法性就的研究 摘要 随着计算机技术的发展和应用的深入,分布式技术在构建企业级应用程序中 更为广泛流行。分布式系统包含地理上分布和数据处理分布两个方面。分布式应 用对于用户应该是透明的,即使在不同的位置,企业不同的业务也应该能协调分 布合作。在很多情况下,企业内部和企业间不同的应用系统之间使用是的不同的 技术,使得不同种类的组件之间数据交换和数据共享变得复杂。同时,企业开发 的历史遗留系统在与当前分布式系统集成过程中出现了互操作的问题。一般解决 方法是在组件之间加上一个特殊的适配器来转换信息,这使得在不同种类系统之 间进行数据交换和数据共享的管理和实现变得复杂而且效率低下。 最近兴起的w e b 服务技术具有跨平台、跨语言、简单、高效、可扩展性强 等特点,适用于系统集成以及踌平台数据通信等工作。n e t 平台上远程处理技 术在d c o m 技术之上发展,综合了原有技术的优点,使分布式编程变的更加灵 活。这两项技术给原有分布式系统的扩展提供了很好的支持。 文章在研究当前分布式技术发展的基础上,采用w e b 服务架构和n e t m m o t i 雄技术,设计了分布式产品数据管理系统本文详细分析和阐述了w e b 服务和n e tm - m o t i n g 基本原理和思想,比较了使用这两种技术对原始c o m 组 件封装的性能差异。结合使用w e b 服务和n e ta c m o t i n g 技术对c o m 组件封装 系统的开发。以及实际过程中优化性能韵手段,从数据存储、数据传输以及响应 模式方面给出了优化方案该系统能够充分利用w e b 服务机制的封装性、松散 耦合、使用协议的规范性、高度可集成能力的特点,以及n e tp , 锄o e g 效率高、 集成度高、可扩展性好的优点,同时它实现了对分布式产品数据管理系统的改造 升级。通过在n e t 平台上的封装,系统完成了从代码非托管形式到托管形式的 转变,并且能够与其他分布式系统集成 关键词;w e b 服务,n e tr e m o t i n g ,c o m ,封装,优化 w i t hf i l ed e v e l o p m e n to fc o m p u t e rt e d m o l o g ya n da p p l i e a t i o m , d i s l x i b u t e d t c e l a n o l o g , i nb u i k t t 琏e n t e r p r i s ea 蹦c 撕si sl l a o l 陀p o p u l a r d i s l r i b u t e ds y s t e m s i n c l u d e8 e o g r a p l a i ed i s t r i b l n i o na r i dt h ed 啦r , r o e 嘲i n gd i s t r i t m t i o n d i s l r i b u t e d a l 带l i e n t i o ns h o u l db e 在锄l s | p 习蝴tf o rt h e 氆脚。e v v - ni nd i f f e r e n tm 鬣i s ,d i f f e r e n t i m s i n 嘲a 啦碍慨s h o u l da l s oc o o r d i n a t ed i s t r i b u t i o no f c o o p e n t t i o n i nm a n yc , a s 嚣 i 蛳b l 姗c n 矗眦耋p r i s 铝u 辩d i f f c l c mk i n d so ft e e l m i q u d s ,w h i c h1 3 a l t k e $ d a t a 窃h a n g eb e t w e e nt h ec o m p o n e n t sa n dd a t as h a r i n gb e c o n l l m o l ec o m p l i c a t e d m c a l a w h i l e , i n t e r - o l 搬 a b i l i t yp r o b l e m sr n i s e di nt h ei n t c g m t i o no f l e g a c ys y s t e mw i t h t h ec u r r e n ts y s t e m c t c n e r a l l y , as p e c i a la d 班w a su s e dt ol z a n s f o r mi n f o r m a t i o n b | 帆v e t h ec o m p o n e n t s 1 1 l i sk i n do fm e t h o dm a d et h ed i l l c - r e n tt y p e so f 出吐a e x c h a n g ea n dm a n a g c m o n to f d a t as h a r i n gi , c c o m i n gc o m p l e xa n di n c t t l e i c n t w e bs e r v i c e si san e w l yr i s t e e l a n o l o g yw i t hc h a n k 觚o fp l a t f o r m i n d e p e n d e n c e ,l a n p 掘g e - i n d e p e n d e n c e , s i m p l i t y , h i g he t t i e i e n e y , a p a 璐i b i l i 何i ti s e s p e c i a l l ya p p l i c a b l et os y s t e mi n t e g r a t i o na n dd 砒am m s m i s s i o n a l s o ,n e t r e m o t i n gb a s e do nd c o m i sac o m b i n a t i o no f 耐s 6 n gt e e l a n o l o g i c sw h i c hm a k e d i s t r i b l l t e dp r o g r a m m i n gm o i r ef l e x i b l e b 勰e do nr c s e a l r e l a m 锄to fd i s t r i b u t e dt e e l m o l o g , , t h i sp a p e ru w e bs e r v i c e a n d n e tr e m o t i n gt e e l m o l o g yt od e s i g nt h ei n t e g r a t e dp r o d u c td a t am a n a g e m 跚t t s y s t e m s i tg a v ed e t a i l e da n a l y s i sa n de l a b o r a t i o no ft h e r e bs e i v i c c 赶l d n e t r m o t i 雌,e o m l , a r lt h ed i :腩啪o ft h et w ot e e l a n o l o g i e sa n do p 血n 切e dt l a ca c t u a l s y s t e mb ym n go fo p t i m i 2 j n gt h ed a t as t 叫a g b ,d a t at r a n s m i s s i o n 柚dl e s p o n p a t t c n l s y s t e mm a 蛔g o o d 豫o fe l a a l 佻t e r i s t i c so fw e bs 酬a n d n e t r e m o t i n g , i th a se n c a p s u l a t i o nm e c h a n i s m , l o o s e l y e o u p l 既l , a g r e e m e n t s o n s t a n 删g l a l yi n t e g r a t e dc a p a c i t y a f t e re n c a p s u l a t e do n n e tp l a t f o r m , i ti s c b a , l g e df r o mc o d e - m a n a g e m e n tt oc o d e - u n m a n a g e m e n t , a n di tc 锄i n t e g l 疵w i t h o t h e rd i s l r i b u t e ds y s t e m sn o w k e y w o r d t s :w e bs e r v i c e s ,n e tr e m o t i n g ,c o m , e n e a p s t t l a t e , o p t i m i z a t i o n h 声明 本学位论文是我在导师的指导下取得的研究成果,尽我所知,在本 学位论文中,除了加以标注和致谢的部分外,不包含其他人已经发表或 公布过的研究成果,也不包含我为获得任何教育机构的学位或学历而使 用过的材料。与我一同工作的同事对本学位论文做出的贡献均已在论文 中作了明确的说明。 研究生签名:盔叠堇2 叩7 年6 月节日 学位论文使用授权声明 南京理工大学有权保存本学位论文的电子和纸质文档,可以借阅或 上网公布本学位论文的部分或全部内容,可以向有关部门或机构送交并 授权其保存、借阅或上网公布本学位论文的部分或全部内容。对于保密 论文,按保密的有关规定和程序处理。 研究生签名:专需移溯年占月瑚日 硕士论文分布式羲嚣访目方法性能的研究 1 绪论 1 1 研究背景及意义 目前,软件开发中闽件在网络通信中起着越来越重要的作用,分布式的组件 已经成为项目不可缺少的部分。传统组件技术如d c o m 、c o r b a 、r m i 满足了 不少应用的需求虽然它们在局域网内运行比较好,但是在i n t e r n e t 使用就出现 了两个典型的问题:一,这些技术互操作不好,如在处理对象的时候对于生命周 期管理等细节问题不够统一;二,这些技术关注r p c 型的信息交流直接导致系 统调用对象方法时耦合性变高。 相比,基于浏览器的w e b 应用具有很好的互操作性和松耦合性,通过h t t p 协议以统一格式进行信息的交互。w e b 殷务在w e b 的模式之上发震,目前已经 不仅是基于浏览器了它可以通过多种协议交互s o | a p 消息不受编程语言,平台 和设备的限制。w e b 服务在分布式领域占有非常重要的地位,由于自身的特点被 广大应用开发人员看好,在未来长时间的发展中会越来越完善,是当今分布式发 展的主流趋势之一 除了w e b 服务,m i c r o s o f t 提供了一种过渡性质的分布式解决方案远程 处理即n e t m 粕娟赡。n e t r e m o t t n g 技术灵活地提供了远程对象创建的方法。 它通过管道使得对远程进程酶控制就像控糊本地对象一样而且具有很好的可扩 展性,它支持更多复杂强大的功能其中包括多种对象的激活模式和生命周期管理 规则等。这种技术是d c o m 技术的替代品,综合了过去中间件的优点,同时可 以很好的融合到n e t 平台之上,能够使用公共语言运行库、垃圾回收等托管代 码独有的方式。 v7 现实中存在很多历史遗留系统,设计模式不能满足如今网络用户的需求如与 托管代码系统集成、跨i n t e r a c t 访问等。需要对原有的系统进行扩展本课题源 于南京市创新基金项目,对p d e m ( p r o d u c td a t a b a s ee l e c t r i c a lm a n a g e m e n t ) 图文 档系统扩展性研究。p d e m 图文档系统是一个综合信息管理系统,不仅涉及企业 产品数据的整个生命周期管理,还与企业的流程管理、供应链管理( s c m ) 、客户 关系管理( c 魁d 等有关,所以有与这些系统集成的趋势。满足广大互联网用户是 未来软件发展的趋势,w e b 服务技术是一种统一的标准,使用w e b 服务对原有 系统进行扩展能够减少对核心事务处理的二次开发投入。同时,n e tr e m o t i n g 是n e tf r a m e w o r k 基础上建立的分布式解决方案可以达到与托管代码系统集 成的目的,相对w e b 服务有竞争优势,它有丰富的界面辅助设计功能,能够很 好地保留系统的原始面貌 磺士论文分布式数据访问方法性能的研究 结合实际情况,为系统选择合理高效的改进模式,在现有技术的基础上实现 对原系统组件托管方式封装,给出新的远程数据访问方法并进行优化处理,对于 扩展分布式组件系统具有实际应用价值和良好的应用前景。 1 2 国内外研究现状 早期,计算机应用程序是围绕一个中心大型主机建立的。大型的计算机主机 比较庞大、昂贵,只能用在大型企业之中。这种集中型的计算方式虽然部署简单, 但是处理逻辑复杂,不便于维护而且很难和其它平台应用程序集成 随着微型计算机的普及,出现了相对成本较低的客户机服务器模式,分布 式技术就在此基础上渐渐发展壮大起来了。从8 0 年代后期到9 0 年代初,两层体 系结构的分布式应用达到巅峰状态。同时它的缺点也渐渐被人们所认识,主要是 客户不能共享数据资源以及业务逻辑的更新变的复杂【l 】。 多层客户机服务器体系结构在原有基础上引入了中间件的概念,改变了两 层分布式的模式。在逻辑上,业务层和界面层分离开有利于模块化的设计和维护。 在多层体系结构中,微软提供了诸如c o m 、d c o m 、m t s 、c o m + 等技术,以 及在n e t 平台上的远程处理技术。另外,对象管理组织( o b j e c tm a n a g e m e n t g r o u p ,o m g ) 于1 9 9 0 年提出c o r b a 的体系结构及s u n 公司的于1 9 9 9 年提 出的j 2 e e 规范都是比较典型的多层分布式体系结构,这些技术都有广泛的应用, 成功的满足了不少分布式应用的需求。 自从9 0 年代中期以来,w e b 在分布式的应用方面扮演了关键性角色,从最 初简单的静态h t m l 文件渐渐发展变得复杂,现在已经变成应用服务的一种, 目前浏览器几乎可以做任何事情。w e b 形式的分布式系统可以减少部署费用而且 具有平台无关的特性,成为分布式发展的一个趋势。微软提出的w e b 服务技术 为建立w e b 形式的分布式系统提供了很好的规范。w e b 服务技术的提出使分布 式技术的发展向前迈进了一大步 2 1 。 分布式应用程序的性能是衡量应用程序构造成功程度的标准,是关键性指 标。在整个开发生命周期中,应用体系设计者需要对性能给予充分的重视。影响 分布式应用程序性能因素有:网络的流量、机器本身的硬件条件等。目前分布式 系统性能离理想状况差距较大,如实际应用中w 曲服务模式表现为网络速度受 限,为达到高速的网络响应,w e b 服务器一般使用电信托管或者申请专线方式, 限制w 曲应用的发展 n e t 为开发应用程序提供的另外一种分布式方式远程处理( n e t r e m o t i n g ) 可以使用t c p 通道,在d c o m 技术基础上扩展具有很好的效率。对 于原有使用c o m 等分布式组件系统扩展比较有利。在设计分布式方案过程中需 2 硕士论文分布式藏器访问方法性能的研究 要具体问题具体分析。 目前,针对分布式系统性能问题优化主要有以下几个方法:伪 a ) 优化数据库。一般分布式应用程序都是基于数据库的应用,一般通过在 规划数据库时消除访问和写于数据时的瓶颈问题,如标志潜在的索引、 使用存储优化性能等 b ) 使用数据缓冲功能使用数据缓冲是基于n e t 平台缓冲功能实现的, 因此只能应用于n e t 分布式系统中。 c ) 使用安全规范维护系统安全。安全性是分布式系统最重要的部分之一 如m i c r o s o f t 和i b m 联合制定了w e b 服务的安全规范:w s s e c u r i t y 就 是保障w e b 服务访问安全的体制。 虽然,近年来分布式技术性能方面的研究取得了一定的进展,但是距离人们 所期待的实用化仍存在相当大的差距,这主要体现在:安全性不够,文件传输速 度低,数据访问服务器的负荷高,两络传输文件数据丢包,客户端响应延迟严重 等方面。因此,分布式技术研究还远未成熟,今后需要在组件互操作、安全访问、 高效传输、异常处理等方面做进一步的深入研究。 1 3 研究目标和内容 不周的远程数据组件的访问方法都有优缺点,并有其适合的应用场合。在项 目中应该采用哪种方法就必须对这些方法工作的模式和性能有一定的认识。本课 题研究目标就是从实际项目应用入手,针对目前可选方案w e b 服务技术和n e t r e m o t i n g 技术进行性能比较,选择合适的方案并对其研究改进,以满足企业发 展需要 本课题内容包括研究分布式技术相关理论,分析安全性能和对象管理方式; 测试使用托管方式封装非托管方式系统的效率,分析产生效率差异的原因;给出 系统设计合理的方案,结合开发过程给出优化方案,设计并实现优化方案提高系 统性能;研究不同分布式模式在同一个系统并存问题,给出信息交互切换的具体 方法 1 4 本文的组织结构 本文分六章,章节安排如下: 第一章绪论阐述了分布式数据访问方式的发展,研究的现状,以及目前 分布式数据访问存在的主要问题,研究的方向 第二章分布式访问安全研究及对象管理。简单介绍分布式技术的发展,从 两种主要的分布式数据访问方式w e bs e r v i c e 和n e tr e m o t i n g 出发,分析安全 爱士论文分布式救器访目方法性能的研究 性能以及主机中的服务对象管理方式 第三章性能仿真测试结合p d e m 图文档项目。使用n e t 工具提供的性 能测试工具,模拟真实情况,设计方案仿真测试几种理论上认为可行访闯方式的 性能,得到实验结果,使用专业数据分析软件分析数据 第四章性能优化采用w e bs ,i 和n e tr e m o f i n g 技术相结合的方式, 结合两种方式的优点给出方案设计模型包括对数据层面的存储传输优化和对客 户端响应模式优化即对于n e tr e m o t i n s 技术引入断点传输功能和采用异步调用 w e bs e r v i c e 提高响应速度。 第五章优化方案扩展。综合使用w e bs e r v i 技术和n e tr e m o t i n g 技术。 给出如何在一个系统里面使用两种技术切换,在第四章优化方案的基础上进行补 充。 第六章结论。对本文工作进行总结和展望,分析项目设计方案的优点,分 析安全性能及传输性能的提高。对后续工作进行展望。 焉士论文分布式蠡鬻访目方法性能的研兜 2 分布式访问安全研究及对象管理 2 1 分布式技术的发展 早期,在面向过程的语言环境中,最常用的调用方式是本地调用。这种调用 方式不需要跨越进程,更不要跨机器,采用单一语言即可实现。上个世纪8 0 年 代面向对象技术的逐渐兴起,面向对象技术以其封装、继承和多态的特性顺应了 软件发展的需求,面向对象重用性使较件开发交的非常方便。御随着软件复杂程 度逐步加深,菜些复杂工作需要通过多个进程彼此分工、协调工作,出现一些中 间件这些中间件就是位于操作系统和应用软件之间的一个软件层,为各种应用 软件提供服务。使不同的应用进程能在屏蔽掉平台或语言差异等情况下进行通 信最为典型的是c o m 组件 2 1 1 c o m 技术 c o m ( c o m p o n e n to b j e c tm o d e l ) 是m i e r o s o t t 提出的一种基于二进制的组 件标准,是种与编程语言无关的软件体系架构,它使各软件组件可以用一种统 一的方式进行信息交互。这种技术扩展了对象的基本功能,描述了开发人员如何 生成可重用的对象,允许不同程序设计语言实现程序之间的交互操作c o m 组 件程序分为两种:一种是进程内组件,它一般是一个动态连接库d l l :另外一 种是进程外组件,它一般是一个可执行的e x e 。 在c o m 下,不允许对对象直接访问,与对象的通信是通过定义良好的接口 而进行的。通过把接口定义为可以应用于对象的一个或者多个相关函数的组,修 改接口只是创建新的身份和责任的全新接口。c o m 采用计数技术来解决内存管 理的问题,c o m 对象通过引用计数来决定对象是否缝续生存下去。c o m 技术是 分布式技术发展一个重要的里程碑,是一种基于本地调用的集成控制系统,在 c o m 技术比较成熟之后,对远程使用c o m 组件的需求越来越突出,d c o m 技 术就是这种分布式的c o m 技术。 d c o m ( d i s t r i b u t e dc o m p o n e n to b j mm o d e l ) 技术实现了c o m 组件的远程 调用。d c o m 是c o m 技术的扩展,它可以支持在不同的计算机组件对象与客户 程序之间或者组件对象之间的相互通信,这些计算机可以在局域网内,也可以在 磺士论文分布式致播访目方法性能的研究 广域网上,甚至通过i n t e m e t 进行连接。d c o m 为在网络不同节点的组件提供了 互操作基础,它可以作为分布式应用系统的基本框架,客户程序与d c o m 组件 之间形成了客户服务器关系,进一步可以构成多层软件模型。c o m 和d c o m 技术分别实现本地调用和远程调用组件化系统,c o m + 在此基础之上,把两者 统一起来,实现了更高级的运行环境 c o m + 提高了从桌面应用程序和较小的d c o m 应用程序向大型的企业范围 升级为支持多用户的系统转移的能力。c o m + 把c o m 、d c o m 和m t s ( m i o r o s o t ! t t r a n s a c t i o ns e r v e r ) 统一起来,形成真正适合企业应用的组件技术c o m 还增 加了一些新服务,如负载平衡、内存数据库、事件模型、队列服务等。 在w m d o w s 系统众多功能和特性中,对于开发人员来说,c o m + 是值得关 注的一个焦点。下面简单的对c o m + 作一个基本介绍,以便更好的了解c o m + 技术 首先c o m + 不是c o m 的新版本,可以认为它是c o m 技术基础之上的新发 展,或者可以称为是在c o m 更高层次上的应用c o m + 的底层结构仍然是以 c o m 为基础,它包含了c o m 的几乎所有内容。c o m + 是c o m 、d c o m 和m r s 的集成,因为c o m + 集成了这些技术要素。更重要的一点是,c o m q m 导了一种 新韵开发模式,它把c o m 组件软件提升到应用层而不是底层的软件体系结构, 它通过操作系统的各种支持,是组件对象模型建立在应用层上,把所有组件的底 层细节留给操作系统 从c o m 到d c o m ,再到m r s 的发展都说明了c o m 技术是一个开放的组 件标准虽然c o m 已经改变了w m d o w s 开发人员应用开发模式,把组件概念融 入到w m d o w s 的应用中,但是由于种种原因,d c o m 和m t s 的许多优越性没有 被广大的开发人员认识到。m t s 针对企业应用和w e b 应用的特点,在 c ( 强忧) c o m 的基础上又添加了许多功能和特性,包括事务特性、安全特性、管 理和配置等,m r s 是c o m 形成一个完整的组件体系结构。由于历史的原因, c o m 、d :0 m 和m r s 相互操作不融洽,c o m + 技术的提出有效的解决了一些问 题 2 1 4c o r b a 和j 2 e e 系统平台 分布式系统从c o m 、d c o m 发展到c o m + 技术这一个过程后,出现了一些 规范的体系如c o r b a 和j 2 e e 体系 硕士论文 分布式数据访目方法性能韵研究 c o r b a l 4 1 ( c 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 跏) 简称公共对象请求代 理结构,它由国际对象管理组织o m g 制定,这个组织是一个国际性组织,始建 于1 9 8 9 年,现已拥有包括生产厂商与软件开发商8 0 0 多个会员,其目的是在分 布和已构计算机环境下为应用软件的开发提供一个公共框架,使开发出来的软件 即面向对象又具有可重用性、可移植性以及可操作性等特点 c o r b a 分布计算技术,是由绝大多数分布计算平台厂商所支持和遵循的系 统规范技术,具有模型完整、先进,独立于系统平台和开发语言,及支持程度广 泛的特点,已成为分布计算技术的标准之一 j 2 e e 1 4 1 ( j a v a2p l a t f o r me n t e r p r i s ee d i t i o n ) 是一种多层应用模式的结构体系。 是s u n 公司在1 9 9 9 年底推出了j a v a 2 技术及相关的j 2 e e 规范,j 2 e e 的目标是; 提供平台无关的、可移植的、支持并发访问和安全的。完全基于j a v a 的开发服 务器端中间件的标准。 在j 2 e e 中,s u n 给出了完整的基于j a v a 语言开发面向企业分布应用规范。 其中,在分布式互操作协议上,j 2 e e 同时支持i m 和i i o p ,而在服务器端分布 式应用的构造形式,则包括了j a v a s e r v l e t 、j s p ( j a v a s 廿v e f p a g e ) 、f _ 2 b 等多种形 式,以支持不同的业务器求,而且j a v a 应用程序具有”w r i t eo n 嗡r t ma n y w h e r e 的特性,使得j 2 e e 技术在发布计算领域得到了快速发展 j 2 e e 简化了构件可伸缩的、其于构件服务器端应用的复杂度,不同的厂家 可以实现与自己相符合j 2 e e 规范的产品j 2 e e 规范,是众多厂家参与制定的, 它不为s u n 所独有,而且其支持跨平台的开发,目前许多大的分布计算平台厂商 都公开支持与j 2 e e 兼容技术。 c o m 、d c o m 、c o m + 虽然之间存在差异,但是它们都有大多数相同的限 制。以上系统结构使用二进制透信方式,系统防火墙会对二进制通信方式限制 即使将防火墙配置为允许在适当的端口上访问,更改设置也经常会中断对象通 信j 2 e e 和c o r b a 有许多内置的服务,如事务、安全性和加密。这些特性增 加了出现问题的可能性,增加了额外的开销,并且产生了不兼容的可能性它们 依赖于设计的语言,不能在非j a v a 的语言中得到广泛的应用,这就限制了可能 的用户以及使用他们的方式而且从使用复杂程度上看,需要开发人员具有丰富 的经验。 以往分布式系统的缺点限制了自身的发展,w e b 服务应运而生,是一种平台 无关、语言无关、设计简单的体系。使用w e b 服务,可以很容易的创建服务、 提供服务,而且不受编程语言,防火墙的限制,这些优点是分布式系统发展的一 个重要突破在具体的系统开发中,应该选择量合适的系统模式在n e t 框架 上,n e t r e m o t i n g 方式具有很大优势,其效率高、互操作性好、高保真性等优 , i 曩士论文 分布式致据访问方法性能的研究 点是与w e b 服务竞争的最大优势舰融釉。畦砧是n e t 领域中用来代替d c o m 韵分布式组件技术,在n e tw e b 服务不适合的情况( 包括需要共享大量信息或 需要达到可能的最快响应时间的内部应用程序) ,它仍然是非常理想的方式下 面将详细介绍w e bs c r v i c 冶和n e t 鼬删坩鸩这两种分布式技术 w e bs o v i c e 是一种以w s d l ( w e b 服务描述语言w e bs r v i 嘲涮嘶 i j m g u a g e ) 描述的,用h t i p 发送的、处理x m l 编码的s o a p 消息的分布式服 务。它能有效的结合地理上分散的、结构不同的、不用语言环境的资源,从而在 开发上节省投入。越来越多的企业选择w e b 服务,利用它的安全性、事务支持 和消息传输机制取代目前一次性的解决方案。w e bs c r v i 具有以下特点:嗍 ( 1 ) m 合度低,开发者调用w e bs c r v i c 特不会因为内部实现机制改变而发生改 变。 ( 2 ) 封装性好,使用w e bs 豇 v i c e 时只能看到对于它的语言描述 ( 3 ) 使用标准协议,w e bs e r v i c e 使用w s d l 语言描述,在传输交换方面使用 完全免费开放的标准协议。 , 憔成性高,w e bs e r v i c e 使用w e b 标准,踌平台性好,可以集成以往开放 的组件,避免二次开发的人力无力的投入。 ( 5 ) 体系开放,w e bs e r v i 跨平台、语言无关,对以往分布式组件有很好的 支持,并且支持多种通信传输协议,如 盯r p 、s m t p 、m q 、f t p 等。 w e bs c r v i 是基于网络的、分布式的模块化组件,它执行特定的任务、遵 守具体的技术规范,这些规范使得w e bs c l w i c e 能与其他兼容的组件进行互操作。 w e bs c n ,i 架构最重要的优点之一就是允许在不同的平台上使用不同的编程语 言以一种标准的技术开发程序来与其他的应用程序通讯提出w e bs e r v i 的主 要目的就是为了实现在,i n t c 棚e t i n t r a n e t 环境下各种系统间的交互,从这点来说有 点类似与组件的功能,但相比之下,w e bs c r v i 具有更广泛的适用性,它支持 跨平台,且在不同程序间提供了一种标准的通讯方法,w e bs 廿v i c e 是通过s o a p 协议进行通信,所有的数据交换是使用x m l 形式进行封装,使用的底层协议为 h t i p 协议,也可为s m t p 或其他协议。 8 磺士论文分布式蠢粥访目方法性能的研究 w 曲s e r v i c e 是独立的、模块化的应用,能够通过i n t e r n e t 来描述、发布、定 位及调用。在w e bs c l v i 的体系架构中包括三个角色:服务提供者、服务请求 者、服务注册器。 图2 2 2 iw e bs e r v j 体系结构 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 的地方,也可以是一个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 f v i 既可以是w e bs e r v i c e 提供者,也可以是w e bs e r v i c e 请求者, 或者二者兼有。这三个s o a 角色通过三个基本操作:发布、查找、绑定来相互 作用。服务提供者向服务注册中心发布服务,服务请求者通过服务注册中心查找 所申请的服务,并绑定到这些服务上 、实现一个完整的w e bs e r v i c e 体系需要有一系列的协议规范来支撑,常见的 是w 3 c 标准的3 个技术:w s d l ,s o a p ,u d d i 。下面介绍这三种关键技 术 2 2 3 1 w s d l ( w e bs e r v i c ed e s c r i p t i o ni m g u g e ,网络服务描述语言) w s d l 是描述某个系统所提供服务的接口规范。w s d l 描述了可以执行那 9 爱士论文 分布式羲据访目方法性匏的研究 些操作以及使用什么样的消息。操作和消息都是用抽象术语描述的,然后通过将 它们绑定到s q a p ,h 几卫,m m 伍等网络协议和消息格式来实现可以认为, w s d l 是用x m l 格式描述的更通用的i d l 。每个w s d l 文件包含以下一些部分: 类型、消息、端口类型、绑定和服务等。一个w s d l 描述一个或者多个提供的 服务,每个服务由一组端口组成,每个端口属于某种特定的端口类型,而且具有 一种特定的绑定每种端口类型定义了多个可以执行的操作,每种操作有一个或 多个消息 一 w e b 服务使用者一般采用两种方式利用w s d l 调用w 曲服务;根据生成的 客户端代码和直接在运行环境中发出请求 图2 2 3 1 1 利用客户端生成代码调用方式 利用客户端生成代码这种方式运用比较普遍,一般通过添加w e b 服务的引 用都是使用这种模式。首先生成w e b 服务代理类,在客户端应用程序中,开发 者直接使用用户代理类,就象使用本地类一样,实际的w e b 服务调用发生在代 理类与w e b 服务之间。 磺士论文 分布式鼓据访目方法性能的研究 调用方法 圈2 2 3 1 2 动态调用w e b 服务方法 动态调用方式一般发生在程序运行时刻。客户应用程序通过它所在的运行环 境发出对w e b 服务的调用,运行环境根据w s d l 文档生成正确的w e b 服务调用 请求,并接受w e b 服务返回的结果,然后把结果传递给客户应用程序,这种方 式有利于对位置不固定的w 曲服务调用在第六章中将基于这种方式给出具体 实现方法。 地j 2 s o a p ( s i m p l eo b j e c t c 嘲_ p r o l t o l ,简单对象访闯协谡) s o a p 是一个基于_ 匝的协议,它是w e bs e r v i c e 的核心部分。s o a p 为在 一个松散的、分布的环境中使用咀。对等地交换结构化的和类型化的信息提供 了一个简单的轻量级机制。s o a p 本身并不定义编程模型或特定语义实现等应用 语义,它只定义了一种简单的基于消息的传输机制 圈2 2 3 2 is o a p 结构 焉士论文分布式致蠢访目方法性能的研究 由图2 2 3 h 1 中可以看到s o a p 主要包含四种基本的元素,e n v e l o p e ,h e a d e r , b o d y 和f a u l t _ 元素 s o a p e n v e l o p e 用来封装s o a p 消息,它包含s o a p 的编码规则和一些命名 空间前缀的声明。e n v e l o p e 一般作为消息的顶层元素出现,所有的其他元素都必 须毡含在该元素内部。 元素 s o a p h e a d e r 元素不是一个必需的元素。如果有,那么它必须作为第一个直 接子元素出现。头元素的所有直接予元素称为条目。一个s o a p 可以包含多个子 头条目元素。在s o a p 头中添加条目可实现在无须预先协定的情况下,以分散但 标准的方式扩展消息 一 元素 s o a pb o d y 是s o a p 消息必要的元素,如果没有h e a d e r 元素,那么s o a p 元素就是第一个直接子元素。如果使用s o a p 来传递普通的消息,就可以在b o d y 元素中随意放置消息的内容,但如果使用s o a p 来进行r p c 调用,就必须遵循 s o a p 所规定的串行化编码规则。 元素 在s q a p 消息传递或者处理过程中,可能由于某些原因不能继续处理该消 息,这个时候可以向消息发出者返回一个包含f a u l t 元素的s o a p 消息。一个b o d y 元素内部只能有一个f a u l t 元素,但是一个f a u l t 元素可以包含多个描述错误的 子元素 “ s o a p 的优势有以下几点:啊 i , s o a p 是平台独立的:s o a p 是普通的x m l ,可以运行任何平台 i i s o a p 消息描述了消息负载的每个数据元素,这样就可以很容易的诊 断可能出现的闯题。 i i i 自由的传输绑定( 不仅仅是 r r i p ) ;自由的语言绑定( 比如j a v a ,c 彤 i v s o a p 降低了安全风险:s o a p 只是x m l ,因此它能够使用端口8 0 , 而该端口通常配置h t y p ,因此s o a p 消息无需开放其他任何端口, 就能通过防火墙的优点,从而降低了潜在的安全风险 2 2 & 3 u d d l ( u n i v e r s a id e s c r i p t i o n 、d i s c e v e r ya n di n t e g r a t i o nr e t r y ,通用描 述、发现和综合注册) u d d i 是一个基于s o a p 消息体系的协议,提供了一种动态发布和查找w e b s e r v i 的机制。通过u d d i 提供的标准接口,一个企业可以发布自己的w e b 焉士论文 分布式致撰访目方法性能的研究 s e r v i c e 供其它企业查询、调用;也可以查询特定服务的描述信息,并动态绑定 到该服务上 u d d i 规范包括s q a p 消息的x m l 大纲和u d d ia p i 的描述,这两者一起 建立了基础的信息模型和交互框架,具有发布各种w e b 服务描述信息的能力 u d d ix m l 大纲定义了四种最主要的数据类型,它们是技术开发人员在需 要使用合作伙伴所提供的w e b 服务时必须了解的基础技术信息。它们是:商业 实体信息( 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 ! 结构) 。 下图给出如何在商业组册中使用这几类数据类型的其中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 是独立实体, b i n d i n g t e m p l a t e 包含了对l m o d e l 的引用、 b m 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 t e m p l a t e :关于服务的 入口点和构造规范的技术信息 用描述了服务的技术规范 圈2 2 3 3 1u d d i 商业组册信息 ( 1 ) 商业实体信息0 m s m e s s e m i t y ) 结构 b u s i n e s s e n t i t y 元素描述了一个组织相关的信息。可以使用它定位属于某个行 业分类或者提供某种产品的企业,也可以定位处于某个地域范围内的企业。商业 信息发布和发现的核心x m l 元素都包含在该结构中,它是商业实体专属信息集 中最高层的数据容器,位于整个信息结构的最上层。 c 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 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 对应着一个企业想要发 布的w e bs e r v i c e s ( 3 ) 绑定信息( 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 元素描述了访问信息,还描述了b u s i n e s s e n f i t y 元素怎么使 用不同的技术规范每个b l l 醯嘲s s e f v i 元素包括了一组b i n d i n g t e m p l a t e 元素 ( 4 ) 技术规范信息( t m o d e l ) 结构 该元素包含了一个列表,列表的每个子元素分别是一个调用规范的引用。它 包括服务名称、发布服务的组织以及指向有关技术规范的u r l 指针c u d d i 定义 硕士论文分布式敦据访问方法性筢的研究 了一个利用u r l 和w e b 服务的框架。使每个企业能够集中地维护自己的调用规 范) u d d ia p i 包

温馨提示

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

评论

0/150

提交评论