XML在分布式信息系统中的应用研究.pdf

上传人:小小飞 文档编号:3579991 上传时间:2019-09-13 格式:PDF 页数:62 大小:2.34MB
返回 下载 相关 举报
XML在分布式信息系统中的应用研究.pdf_第1页
第1页 / 共62页
XML在分布式信息系统中的应用研究.pdf_第2页
第2页 / 共62页
XML在分布式信息系统中的应用研究.pdf_第3页
第3页 / 共62页
XML在分布式信息系统中的应用研究.pdf_第4页
第4页 / 共62页
XML在分布式信息系统中的应用研究.pdf_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《XML在分布式信息系统中的应用研究.pdf》由会员分享,可在线阅读,更多相关《XML在分布式信息系统中的应用研究.pdf(62页珍藏版)》请在三一文库上搜索。

1、西安电子科技大学 硕士学位论文 XML在分布式信息系统中的应用研究 姓名:刘红梅 申请学位级别:硕士 专业:情报学 指导教师:赵捧未;任志纯 20040101 摘要 随着计算机网络的发展,特别是I n t e r n e t 的迅猛发展,基于网络的分布式信息 系统在各个领域得到了广泛的应用。与此同时,扩展标记语言( e X t e n s i b l eM a r k u p L a n g u a g e ,X M L ) 也成为了网络中数据表示和交换的标准。本文以分布式信息系统 为主要研究对象,对现有分布式对象技术进行了比较分析,针对现有技术的种种 弊端,引入了X M L 及简单对象访问协

2、议( S i m p l e O b j e c t A c c e s s P r o t o c o l ,S O A P ) 分别 作为系统中数据表示方式和消息传递机制,深入研究了X M L 在分布式信息系统中 的应用。本文首先研究现有信息系统的扩展性问题,提出用X M L 作为信息系统和 外挂插件之间的交互语言。接下来提出了基于组件管理器模式的分布式体系结构, 该体系结构有效解决了目前流行分布式体系结构所存在的问题,并且研究了该体 系中异构信息源集成问题,提出了一个把X M L 作为通用数据接口的W r a p p e r 体系 结构。最后,在上述模型的基础上,通过D e l p h

3、i 语言编程进行了部分模拟实现, 并借助实例验证了该体系结构的可行性和有效性。 关键词:扩展标记语言分布式信息系统组件管理器简单对象访问协议 A b s t r a c t A l o n g w i t ht h e d e v e l o p m e n to fc o m p u t e rn e t w o r k s ,e s p e c i a l l y t h e I n t e m e t , n e t w o r k b a s e dd i s t r i b u t e di n f o r m a t i o ns y s t e m sh a v ef o u n

4、 dw i d ea p p l i c a t i o ni nv a r i o u s f i e l d s A tt h es a m et i m e ,d u et oi t so u t s t a n d i n ga d v a n t a g e s ,e X t e n s i b l eM a r k u p L a n g u a g e h a se m e r g e da st h el e a d i n g l a n g u a g e f o r r e p r e s e n t i n ga n de x c h a n g i n g d a t

5、 ao v e rt h eI n t e m e t T h i sd i s s e r t a t i o nm a i n l yd e a l sw i t ht h ed i s t r i b u t e di n f o r m a t i o ns y s t e m ,a n dt h e a n a l y s i sa n dc o m p a r i s o na m o n g t h ed i s t r i b u t e do b j e e t t e c h n o l o g i e sa v a i l a b l ea r em a d e A i

6、m i n g a tt h ed i s a d v a n t a g e so ft h ep r e s e n tt e c h n o l o g i e s ,w ei n t r o d u c et h ee X t e n s i b l e M a r k u pL a n g u a g e a n d S i m p l eO b j e c tA c c e s s P r o t o c o la st h ed a t a r e p r e s e n t a t i o nm a n l i e r a n dt h em e s s a g et r a

7、n s f e rm e c h a n i s m s e p a r a t e l y I na d d i t i o n ,t h ea p p l i c a t i o no fX M L i n d i s t r i b u t e di n f o r m a t i o ns y s t e mi ss t u d i e d F i r s t l y , t h ee x t e n s i b l ep r o b l e mo ft h ep r e s e n ti n f o r m a t i o ns y s t e m sa r ed i s c u s

8、 s e d a n dt h ea u t h o rp r o p o s e dt h a tX M Lc a l lb eu s e da st h ei n t e r a c t i o nl a n g u a g eb e t w e e n i n f o r m a t i o ns y s t e m sa n dp l u g - i n s S e c o n d l y , ad i s t r i b u t e da r c h i t e c t u r eb a s e do nt h e c o m p o n e n tm a n a g e r m o

9、 d ew h i c hs o l v e st h ee x i s t i n gp r o b l e m si np r e v a l e n td i s t r i b u t e d a r c h i t e c t u r ei sp r o p o s e d H e t e r o g e n e o u si n f o r m a t i o ns o u r c ei n t e g r a t i o ni sa l s od i s c u s s e d a n daW r a p p e ra r c h i t e c t u r eu s i n g

10、X M La sc o m l n o nd a t ai n t e r f a c ei sp r o p o s e d F i n a l l y , b a s e do nt h em o d e ld i s c u s s e da b o v e p a r t so f a p p l i c a t i o n sa r er e a l i z e db yp r o g r a m m i n g a n dt h ef e a s i b i l i t ya n dt h ev a l i d i t yo f t h i sa r c h i t e c t u

11、 r ea r ep r o v e d b y a l le x a m p l e K e y w o r d :e X t e n s i b l eM a r k u pL a n g u a g e D i s t r i b u t e dI n f o r m a t i o nS y s t e m C o m p o n e n tM a n a g e rS i m p l e0 b j e e t A e c e s s P r o t o c o l 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致

12、谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均己在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名型堑垫日期;至翌竺:! :望 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:学校有 权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部 分内容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论文在解密 后遵守此规定) 本人签名 导师签名

13、圭11 :塑 墅垄整 日期:! ! 竖,! 日期:丝! :! :箜 第一章绪论 第一章绪论 1 1 引言 随着以计算机技术、通信技术、网络技术为代表的现代信息技术的飞速发展。 人类社会正从工业时代阔步迈向信息时代,人们越来越重视信息技术对传统产业 的改造以及对信息资源的开发利用,“信息化”已成为一个国家经济和社会发展的 关键环节,信息化水平的高低已经成为衡量一个国家、一个地区现代化水平和综 合国力的重要标志。 信息系统是一个人造系统【”,它由人、硬件、软件和数据资源组成,目的是及 时、正确地收集、加工存储、传递和提供信息,实现组织中各项活动的管理、调 节和控制。信息系统包括信息处理系统和信息传

14、输系统两个方面。信息处理系统 对数据进行处理,使它获得新的结构与形态或者产生新的数据。随着计算机网络 的发展,特别是I n t e m e t 的迅猛发展,传统的信息系统概念发生了巨大的变化,这 些变化突出地表现在信息的存储、传递、发布以及获取方式所发生的革命性变革。 与此同时,基于网络的分布式信息系统在各个领域得到了广泛的应用,在整个社 会生活中正发挥着日益突出的作用。 目前流行的各种分布式技术为追求高效率大都采用二迸制的方式进行编码传 输。这种方式的弊端是需要进行与平台相关的解码和编码工作。同时网络化还引 发了信息的大规模交换,如何精确、灵活地在互联网上传输信息成为一个亟待解 决的问题。而

15、可扩展标识语言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 ) 正成为持续开 发互联网信息资源,满足人类网络信息新需求的一种新技术。X M L 是一种可用来 描述结构化数据的元语言,它可以非常准确地描述各种数据格式,同时也非常有 利于用户根据自身的实际需求做适当的扩展。采用X M L 作为分布式环境下传输协 议的编码格式有效地解决了异质平台间编码的复杂性,同时可以与现有的丰富的 X M L 数据资源相结合。 X M L 语言不仅可以用于数据的精确表达,而且可以为异构信息系统之间的数 据交流提供有效的方法。考虑到这些积极的因索,本文将

16、对X M L 技术在分布式信 息系统中的应用进行探讨,并对于其中的一些关键技术进行研究。 1 2 目前研究现状 对于分布式信息系统的研究从2 0 世纪7 0 年代就已经开始48 1 。分布式信息系 统的核心是分布式对象技术,于是出现了基于C O R B A ( 公共对象请求代理结构, C o m m o n O b j e c tR e q u e s t B r o k e rA r c h i t e c t u r e ) 的分布式信息系统,基于D C O M ( 分 X M L 在分布式信息系统中的应用研究 布式组件对象模型,D i s t r i b u t e dC o m p o

17、 n e n tO b j e c tM o d e l ) 的分布式信息系统等等 4 9 , 6 0 , 6 1 , 6 2 。分布式信息系统的查询检索也得到了广泛的研究【5 ”。当前研究的热点是 在分布式信息系统中引入X M L ,主要在以下几个方面: l 、X M L 作为通用数据模型集成不同格式的数据 1 4 , 5 3 , 5 4 。目前的数据集成系 统一般遵从W i e d e r h o l d 提出的M Q S 体系结构【3 】,考虑到数据源访问的不确定性和 网络传输的代价,当用户提交查询后,系统尽可能利用中间层视图,而不是访问 数据源来回答查询。由于X M L 成为目前信息表

18、示和交换的标准,可以用X M L 来 集成网络上结构化、半结构化和非结构化数据,为用户提供统一的查询视图。 2 、在企业信息系统中使用X M L 作为数据传递及处理的格式。可以有两种方 案【2 1 :第一种方案是将X M L 作为各个分系统共同支持的标准,定义一个流程化的 基于X M L 的完整业务流程解决方案,使X M L 的应用与系统整体框架紧密关联: 并提供对X M L 文档有效性验证及不同数据格式转换的应用工具,实现企业用户自 定义业务流程的自动化处理。在这个方面的突出例子是微软V i s u a lS t u d i o n e t 平台 的应用服务器B i z t a l kS e

19、 r v e r 。第二种方案是X M L 仅仅起到中间的数据表示与消息 传输的作用。因为这种方案更有利于重用企业原有的各个内部分系统,所以在实 际应用中一般采用第二种方案。 3 、X M L 数据的存储与查询检索。对于X M L 数据的存储问题已经进行了大量 的研究 5 5 , 5 6 5 7 】,可以根据具体需要把X M L 数据存储在支持X M L 的数据库或咀, 本源数据库。X M L 数据的迅猛增加,导致了大量X M L 查询语言的出现,例如 X M L Q L f 4 J ,X Q L Q u i l t 吲等,文献【7 】还提出了利用D T D 和签名( s i g n a t

20、u r e ) 相结合 的方式进行X M L 查询。 4 、运用简单对象访问协议( 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 ) 进行远程调用 1 5 0 , 5 8 , 5 9 1 。在一个分布、异构的系统中,通信机制必须是平台无关的、安全的、轻量 级的。S O A P 是一个用来传递消息和进行远端过程调用的基于X M L 的协议,它可 以通过H T T P 协议传输,这也就是说它可以穿过防火墙,适宣网络应用。 总之,X M L 在分布式信息系统中已经得到了大量的应用,但是它不能代替其 它分布式技术,而是需要与其它分布

21、式技术协同工作。X M L 文档的传输仍然缺乏 完善的安全机制。在数据集成中X M L 也不能单独提供一个完善的解决方案。 1 3 论文研究的意义和所做的工作 论文的意义:在一个基于组件管理器模式的分布式信息系统中引入X M L 技 术,可以有效克服现在流行的基于D C O M 分布式信息系统所存在的不能很好跨平 台的问题,也能避免C O R B A 过于庞大复杂的问题。在基于网络的应用中,还能 穿越防火墙。这样一种松散耦合的方式也提高了系统的健壮性,对实际应用有一 第一章绪论 定的指导意义。 本文所做的工作主要如下: l 、分析了分布式信息系统的体系及层次特点,总结出以往各种分布式计算技 术

22、存在的问题。 2 、对X M L 和信息系统的关系做了一定的研究。重点研究了X M L 文件、X M L 数据库、比较了X M L 文件存储和数据库存储的优缺点。提出了在信息系统与外挂 插件间利用X M L 作为交互语言,可有效解决信息系统扩展难的问题。 3 、提出了基于组件管理器模式的分布式体系结构,并编程实现。本体系结构 借鉴E J B 的思想,利用组件管理器管理组件,使客户端与组件、组件与组件之间 可以相互调用,并且利用简单对象访问协议传递请求消息,可解决在分布式应用 中D C O M 不能跨平台、C O R B A 过于庞大并且D C O M C O R B A J a v a 不能穿

23、越防火 墙的问题。 4 、提出了一个对异构数据源集成的W r a p p e r 体系结构,在这个体系结构中, X M L 作为统数据模型,组件对数据库的查询返回的是X M L 文档。W r a p p e r 能够 与H T T P ( 超文本传输协议,H y p e r t e x t T r a n s f e rP r o t o c 0 1 ) 和S S L ( J J H 密套接字安全层, S e c u r i t yS o c k e tL a y e r ) 协同工作,并且能够理解数据格式,可将不同数据库的数据 转化为X M L 文档,提供对异构数据库的有效查询检索。 1 4

24、 论文的结构 论文的结构如下: 第一章,绪论。简述论文的研究对象、研究目的和所完成的工作等基本情况。 第二章,分布式信息系统。介绍了分布式信息系统的概念,C S ( C l i e n t S e r v e r ) 结构和B S 佃r o w s e S e r v e r ) 结构以及分布式三层结构体系及各层特点。其次介绍了 分布式对象技术D C O M 、C O R B A 、J A V A 以及S O A P 协议,并对其进行比较。最 后给出了分布式信息系统的信息组织和获取方式。 第三章,X M L 和信息系统。首先介绍了X M L 文件和X M L 数据库,以及X M L 文档模式和

25、数据库模式之间的映射,X M L 数据库与传统数据库之间的区别与联系, 其次介绍了信息系统中X M L 文档的模式设计方法,最后给出了X M L 在信息系统 外挂插件中的应用。 第四章,X M L 在分布式信息系统中的应用。首先指出了现阶段分布式信息系 统所面临的问题,接着提出了一个基于W i n d o w s 平台组件管理器模式的分布式体 X M L 在分布式信息系统中的应用研究 系,并且详细分析了体系中五个重要问题,并给出了实现技术以及模拟应用。 第五章,结论与展望。总结了本文的工作,就还没有考虑或做得不完善的一 些问题提出来做了相关的探讨,并对关于X M L 技术在分布式信息系统中的发

26、展进 行了展望。 第二章分布式信息系统 第二章分布式信息系统 2 1分布式信息系统概述 所谓分布式信息系统【8 1 ,是指以计算机网络为基础,将系统的数据与功能分布 在地理上不同位置,通过自然的数据与功能连接而进行辅助决策的信息系统。严 格来讲,分布式信息系统最为适合分布式组织的企业和单位。由于分布式信息系 统是以计算机网络为基础构建的,所以它必然是一种分层结构。支持整个系统, 必须有健壮并且功能强大的分布式操作系统。 能够主动地去发现信息,把管理信息系统推向决策支持系统的高级阶段,正 是分布式信息系统较之于传统的集中式信息系统的优势所在。 系统的安全是系统设计时必须考虑的,系统必须能够抵制三

27、类破坏:( 1 ) 硬件 损坏的自然破坏;( 2 ) 人为的蓄意破坏;( 3 ) 由于系统设计不当而导致误操作或随机 事件的破坏。分布式信息系统由于层次繁多,所以抵御来自各层次破坏是相当重 要的。常用的手段有:访问权限控制;加密保护;数据备份;优美降级。 分布式系统模式通过给每一个对象或者组件定义特定的接口,从而获得了极 大的伸缩性和柔韧性。一个组件提供为其它组件提供服务的接口,以及如何使用 这些服务的详细细节。只要组件的接口不发生变化。组件的实现方法如何变化不 会对其他组件发生任何影响。因此分布式信息系统具有很强的可维护性,可以比 较容易地进行功能扩充和修改。 c s 模式中,前端处理机只支

28、持联机处理的功能,距离人们的期望还很远。同 时,管理者对信息系统的辅助决策能力的要求也日益提高,这就要求信息系统在 可以进行信息存储、归类的基础上,又要有部分分析、发现隐藏信息和辅助决策 的功能。人工智能与知识工程的发展使得这方面的应用开始普及。现在,从事数 据分析与处理的研究者已经把人工智能的一些机制用于数据挖掘,迸而支持基于 知识的处理。所以,无论从技术角度,还是从商业、贸易发展的角度看,分布式 信息系统是信息系统发展的必然趋势。对比于传统系统的一些缺点和不足之处, 它有极为强劲的优势。 2 2 C S 结构和B S 结构 客户机服务器系统( c l i e a t S e r v e r

29、S y s t e m ) 结构是指把一个大型的计算机应用 系统变为多个互相独立的子系统【9 1 ,服务器是资源存储与管理的中心,不同客户机 各自处理相应的功能,共同实现整个系统完整的应用。随着I n t e r n e t 的不断发展, 又产生了“浏览器绡务器”( B r o w s e S e r v e r ) 结构模式。 X M L 在分布式信息系统中的应用研究 典型的两层客户端服务器结构是一个客户端的用户P c 机( 前端) 和一个包含 数据库的网络服务器( 后端) ,逻辑上根据两者的物理位置划分。通常,客户端包含 大部分业务逻辑,随着存储过程的发展,S Q L ( 结构化查询语言,

30、S t r u c t u r e dQ u e r y L a n g u a g e ) 语言允许业务逻辑在数据库服务器中存储并执行。两层的客户端I 服务 器结构如图2l 所示。 图21 两层的客户端服务器结构 当一个小的业务仅仅使用或需要个简单的数据源时,这种两层方案会运行 得很好。然而,大多数业务目标在不断增长,随着业务的不断增长,数据库的性 能必须提高。这种两层方案的性能不能成比例地提高。如果业务规则改变了,那 么应用程序就需要重建并重新配置。另外,有些因素( 例如并发的数据库连接的最 大数量) 将使这个结构在一个分布式的设置下不能发挥更大的效能。 在现代广泛流行的C S 模式( 即

31、客户机朋艮务器模式) 的条件下,信息的加工 与处理存在以下的不足之处I s j :( 1 ) 当需要交换的信息量增大时,用于后台支撑的 数据库系统被设计的更加复杂;( 2 ) 数据库如果出现故障乃至崩溃,将严重影响 各个终端的信息处理能力;( 3 ) 服务器的压力会随着访问量的增大而增大,极大 的影响与客户的信息交互;( 4 ) 不提供个性化的服务接口;( 5 ) 缺乏智能处理的 能力,在辅助决策时较为机械;这些问题来源于C s 模式系统结构的组织方式。 在C S 模式中,客户机只是机械的充当配角,而将大部分工作交由服务器来 完成,当业务量急剧上升时,服务器就会难堪重负。实践证明,网络环境下,

32、当 工作量增大时,往往在客户端会得到服务器忙、出错、连接无效等信息,但试图 再次访问时,很有可能轻易登陆,这就是服务器处理问题能力的具体表现。另外, 许多商业网站虽然保留用户的部分个人信息,却不给用户提供个性化的服务接口, 对任何一个用户一般是用同一副面孔,这与进行个性化服务的服务发展趋势是矛 盾的。对于商业公司来讲,其业务数据库如果崩溃,后果可能是灾难性的。举个 例子来说,现代银行的客户信息大多都存放于数据库中,对于一个每日交易量上 亿元的银行,数据库哪怕是出现微小故障都有可能是巨大的损失。所以,数据库 的维护工作就显得特别重要。为了有效的解决上述问题,必须改变以C S 模式为 第二章分布式

33、信息系统 基础的信息系统,将计算与处理任务合理分配。同时,进一步强调信息系统的整 体性、自治性和智能性。为了达到这个目的,必须将信息系统构造成一个跨地区 的综合平台,严格的定义计算机之间的并行机制,数据库也必须认真进行分片和 引入合理的联结机制和数据保护措施。为了有效进行信息管理,符合网络特性进 行工作,充分利用网络的特点和优势,引入分布式信息系统是必要的。 2 _ 3 分布式多层体系结构 随着网络技术的发展和应用,以及企业信息化建设本身需求的增大,企业信 息系统处理模式逐渐由原来的主机( M a i n f r a m ) 集中处理系统、网络文件系统N F S ( N e t w o r k

34、F i l eS y s t e m ) 、D C E ( D i s t r i b u t e dC o m p u t i n gE n v i r o n m e n t ) 、C l i e n t S e r v e r 发展为现在越来越普遍采用的分布式系统模式。现代企业信息系统无论是E R P 系 统,还是电子商务系统,都呈现出物理位置和功能的分布特性,运行平台和开发 平台存在异构性,可维护性和扩展性要求变高,对框架构造和模块重用的要求也 提高了。现代企业信息系统采用分布式系统模式已成趋势。 随着组件技术和分布式对象的发展,三层C S 结构已经成为许多I n t r a n e

35、t 信息 系统开发的首选【1 0 1 。三层C S 结构是将应用功能划分成用户接口层、商务服务层 和数据层三部分,其核心是商务服务层。一般使用某种形式的中间件实现商务服 务层的核心功能。中间层是一个软件层,具有强大通讯能力和良好可扩张性的分 布式软件管理组件。其功能是在客户机和服务器或者服务器和服务器之间传送高 级通讯,将客户机群与服务器群有机地结合起来。 三层结构模型如图所示。 中间件在大型分布式系统中起着越来越关键的作用,目前也出现了不少这方 面的产品。例如:S u n 公司为J a v a 平台推出的E J B ,微软开发的M T S ,S y b a s e 公司推 出的E A S e

36、 r v e r 等。E A s e r v e r ( E n t e ;r p r i A p p l i c a t i o nS e r v e r , 企业应用服务器) 提供了 一个分发基于组件的分布式应用的中间层逻辑的框架,其核心是一个高性能的事 务服务器,该服务器对客户会话、安全、线索、第三层数据库连接和事务流提供 了高效的管理。用E A S e r v e r 建构的分布式应用的体系结构如图所示。 X M L 在分布式信息系统中的应用研究 用户界面层商务服务层数据层 图2 3 基于E A S e r v e r 的分布式应用体系结构 J a g u a r 可以装载P o w

37、e r B u i l d e r 、J a v a 、C C # 和C O M A c t i v e X 组件。组件 ( C o m p o n e n t ) 是一个封装了的对象,其中包含运行于J a g u a r 事务服务器中的企业逻 辑。一个组件包含一个或多个向J a g u a r 客户提供服务的方法。客户创建一个组件 实例并执行与该组件相关的方法。 访问E A S e r v e r 服务器的客户有三个组成部分:( 1 ) 用户接口:在客户应用中 实现的企业用户与应用程序进行交互的所有窗口和菜单,以及响应每个动作的处 理脚本等;( 2 ) 连接对象( C o n n e c t

38、 i o nO b j e c t ) :客户应用与J a g u a r 进行连接及请 求它的服务都是通过连接对象来实现的;( 3 ) J a g u a r 代理对象:J a g u a r 服务器中的 每个组件在客户应用中都有一个相应的代理对象( P r o x yO b j e c t ) ,在程序运行时, 客户可以利用代理对象访问本地对象实例那样访问远程对象实例。 典型的分布式应用程序通常由安装在不同计算机上的两部分组成:服务器应 用和客户应用。两者共同完成用户所需的任务。一般说来,客户应用与用户进行 交互,而服务器应用则为客户应用提供后台服务,应用程序各个部分的物理位置 对用户来说

39、是透明的。服务器应用通常为一个或多个客户应用提供后台服务,它 自己也可以作为一个客户。 三层应用系统的设计过程中,用户接口、商业逻辑算法以及对数据库的操作 的功能实现与两层的客户,服务器应用系统基本相同,仅仅在用户接口层和商业逻 辑层的分布设计上有所差别。 分布式应用采用了多层体系结构,将应用的逻辑结构进行合理的分布,当需 要改变应用软件的商业逻辑规则时,只要改变应用服务器的程序即可。在大型应 用系统中,三层结构具有效率高、易于维护、可靠性高等优点。同时实际应用表 明,当用户数量较少时,是否利用中间件的连接管理功能,对数据库的响应速度影响 不大,有时甚至更慢:但随着用户数量的增多,采用中间件的

40、连接管理功能所带来的 性能上的优势就显现出来,用户越多,性能提高就越明显。 三层结构较传统的两层应用模式有着多方面的技术优势,主要表现在以下几 个方面: ( 1 1 逻辑封装性:当用户需要修改商业逻辑规则时,只要改变应用服务器的程 第二章分布式信息系统 序即可。 ( 2 ) 瘦客户机:减轻了客户端的工作负荷。 ( 3 ) 高性能:将复杂的商业逻辑独立出来,由专门的应用服务器来处理,既提 高了应用的执行速度,又减少了网络调用的通讯量。 ( 4 ) 安全性高:识别用户的机构是按层来构筑的,提高了系统数据的安全性。 ( 5 ) 对分布式应用有很好的支持,也支持异种数据库。 在设计分布式应用程序时需要

41、确定如何访问和表示与该应用程序相关联的业 务数据。图2 4 所示为分布式应用程序中的常见层。 图2 4 分布式应用程序中数据的访闾与表示 多数应用程序将数据存储在关系数据库中,除此之外还有其它数据存储方式。 将保持逻辑与数据区分开来的原因如下: 独立的数据保持组件可以将应用程序与数据源名称、连接信息、字段名等 数据库相关内容隔离开。 现在的许多应用程序都采用X M L W e bs e r v i c e s 、M i c r o s o f t 消息队列( 亦 称M S M Q ) 等松散耦合的、基于消息的技术。这些应用程序通常通过传 递业务文件而不是传递对象进行通信。 2 4 分布式对象技

42、术 目前在国际上已有三大分布式组件对象标准:O M G ( 对象管理组织,O b j e c t M a n a g e m e n tG r o u p ) 组织推出的C O R B A 【1 1 】;M i c r o s o f t 公司推出的D C O M ;S U N 公司推出的用J a v a 语言开发的分布式对象模型R M I ( 远程方法激活,R e m o t e X M L 在分布式信息系统中的应用研究 M e t h o dI n v o c a t i o n ) 。 分布式结构直接把所有的应用都转化为对象的概念,即分布式系统中任何一 个对象都可以通过一定的接口调用另一

43、个对象提供的服务,甚至是另一个系统中 某些对象提供的服务。在这样的体系结构中,客户端和服务器的概念都变得模糊 了,因为客户端的对象也可以产生自己的实例,在实际的应用中扮演服务器的角 色。这样的分布式系统,提供了整个系统绝对的灵活性和互操作性。分布式系统 从某种意义上来说,可以看成是一种多层的客户端 1 i 务器系统,但是如果要区分 其中的客户端朋艮务器的数量的话可能相当的庞大。一个最重要的不同之处就是, 分布式系统还可以提供更多的服务,比如它提供各个模块允许定位的功能,还有 各个组件之间可以互相监视互相通信,并且可以协同起来,一起完成工作。 C O R B A 、D C O M 和J a v

44、a R M I 都被设计用于分布式对象的客户服务器模式的 通信。在这三种技术中,都是一个客户调用一个请求,该请求则由远方的一个对 象来实现,远方的对象充当服务器的角色。提供服务的对象都有一个接口,该接 口是通过接口定义语言来定义的。由于接E l 的存在,使对象的实现过程对于客户 是隐蔽的。C O R B A 和C O M 都是通过R P C 和引用远程对象的方法来实现的。这三 种技术中,对数据类型的支持都是基本数据类型,这些数据类型都被映射到多种 程序设计语言中。 在分布式组件技术中,将代码与数据封装起来的组件可以被安装在网络的任 何地方。客户端软件只需要知道组件的接口,而不需要知道组件是如何

45、实现以及 在什么地方运行。透明性和可重用性是分布式组件技术的两大优点,但是它也给 信息安全提出了新的问题。 2 4 1 D C o M 分布式组件对象技术是一项开放式跨平台的技术。现在微软公开发放D C O M 技术许可证给采用其它主要操作系统的软件公司。包括基于U n i x 系统的各种应用。 A G 公司目前已经采用D C O M 运行于基于S o l a r i s 的操作系统。此外,微软正寻求 与互联网标准制定实体,包括I E T F 和W 3 C 合作,促使D C O M 成为一种通用的互 联网技术。 分布式对象技术是在互联网上扩展组件应用最好的网络技术。由于是一种 A c t i

46、v e X ,D C O M 可以本地化与互联网技术如T C P I P 、J a v a 语言和H T T P 网络协议 协同工作,并提供对象接入,使各种商业应用在W e b 上畅通无阻,并且不需任何 特殊通信代码和附加的诸如“远程类”就可以支持目前的J a v a 。 D C O M 目前正逐渐成为一种用于商业应用的主流I n t e r n e t 技术,主要原因是: 1 、D C O M 传输中立。D C O M 允许组件通过任何网络传输,无论是连接为目 的的或是非连接的,包括T C P I P 、U D P I P 、I P X S P X 、A p p l eT a l k 和H

47、T T P 等相互 第二章分布式信息系统 通信。 2 、D C O M 提供目前分布式的J a v a 。由于D C O M 是语言中立的,J a v aa p p l e t s 可以在I n t e r n e t 上通过D C O M 直接实现相互通信。 3 、D C O M 是发展中的技术。除了支持J a v a ,D C O M 也允许用其它语言如C 、 C O B O L 、B a s i c 和P a s c a l 等编写的组件在I n t e r n e t 上相互通信,为目前各种应用支 持W e b 技术提供了一种发展途径。 4 、D C O M 是用于浏览器和w 曲服务器

48、的通用组件。由于A c t i v e X 可嵌入基 于浏览器的应用,D C O M 使分布式I n t e r n e t 应用建立于一个更丰富的应用基础结构 之上。 5 、D C O M 是安全的。D C O M 将基于认证的安全应用与一个更高水平的基于 W i n d o w sN T 的安全应用结为一体,综合了两者的优点。 6 、D C O M 是以标准化为基础的。D C O M 是基于O p e nG r o u p D C E R P C 的一种 开放的、应用广泛的通信技术。D C O M 的协议扩展已经递交了一份I n t e r n e t 草案。 24 2 C O R B A

49、 为了解决异构性问题 n l ,对象管理组织O M G 提出了“公共对象请求代理体 系结构”C O R B A 分布式对象计算标准,C O R B A 由对象请求代理O R B 、对象服务、 公共设施、域接口和应用接口这几个部分组成。其核心部分是对象请求代理O R B ( O b j e c tR e q u e s tB r o k e r ) 。O R B 提供了一种机制,通过这种机制,对象可以透明 的发出请求和接收响应。分布的、可以互操作的对象可以利用O R B 构造可以互操 作的应用。O R B 可看作是在对象之间建立客户服务关系的一种中间件。基于O R B , 客户可以透明的调用服务对象提供的方法,该服务对象可以与客户运行在同一台 机器上,也可以运行在其他机器上通过网络与客户进行交互。O R B 截取客户发送 的请求,并负责在该软件总线上找到实现该请求的服务对象,然后完成参数、方 法调用,并返回最终结果。C O R B A1 1 由对象管理组织在1 9 9 1 年发布。定义了 接口定义语言( I D L ) 和应用编程接口( A P I ) ,从而通过实现对象请求代理( O R B ) 来激活客户N 务

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育


经营许可证编号:宁ICP备18001539号-1