




已阅读5页,还剩89页未读, 继续免费阅读
(计算机应用技术专业论文)分布式对象计算技术在web中的应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘蛭 摘要 y 3 4 9 4 。 份和式计算是网络计算平台上开发分布式应用系统的一种模式,它 能实现管理和维护资源共享和协同工作的应用目标。分布式对象计算技 术将面向对象技术应用于分稚式计算。面向对象技术在异构的网络计算 环境中全面、彻底的实施,不但能有效地控制应用系统的开发、管理和 维护的复杂性,而且使应用系统具备了面向对象的许多特征。 w e b 作为i n t e m e t i n t r a n e t 上主要的应用,为异型机、异构操作系统、 异构网络和异构数据源的集成提供了一个计算环境和应用平台,是个 典型的分仰式应用。但w e b 技术存在着不足,主要是由于h 1 v r p 协议的 无状态性使得w e b 很难有效地支持事务处理和系统集成。利用分币i 式对 象讨鹤技术麴建对象w e b 则为传统w e b 难以解决的问题提供了解决途 径。 本文在充分理解分布式汁算和分稚式对象计锊技术的基础一k ,分析 比较f j 珂种分和式埘象技术c o r b a 和c o m d c o m ,重点介绍c o m d c o m 的技术原理和特点。在分析w e b 的体系结构旗础。j 二给出了几种分 确i 式对象技术与w e b 结合的模型,探讨了分布式刘象技术与w e b 集成中 的问题。 w i n d o w sd n a 是一个以c o m d c o m 为基础、j i i 于w i n d o w s 平台、 集成客户机服务器模型和w e b 应用的分布式应用框架它将c o m 组 件应用- f w e b 系统,进行事务逻辑处理,实现复杂的应用。本文详细讨 论了d n a 的原理和层次模型,并针对实际应用捉 i 种基于c o m 组件 的软件工程丌发方法。 最后,利用d n a 框架和基于c o m 组件的软什【程丌发方法在中国 民航机场建设总公司的i n t r a n e t 。| 二实现了一个基j 二w e b 的分布式应用一 一计锋机网络信息管理系统。 j x j - 。- 关键词:分布式对象计算w e bc o r b ac o m d c o m ( 刚a 组f - i :( 构缈“徊垮,寸唷掣 。4 9 焱 摘盟北力交通人学坝i 。学缸沦义 a b s t r a c t d i s t r i b u t e dc o m p u t i n gm e a n sd e v e l o p i n g ,d e p l o y i n g ,a d m i n i s t e r i n ga n d m a m - f f t - a f n i n gd i s t r i b u t e da p p l i c a t i o ns y s t e m so nn e t w o r kc o m p u t i n gp l a t f o r m s , w h i c ha i ma tr e s o u r c e ss h a r i n ga n dc o l l a b o r a t e dw o r k c o m p a r e dw i t h c o n v e n t i o n a ld i s t r i b u t e dc o m p u t i n g ,d i s t r i b u t e do b j e c tc o m p u t i n g ( d o c ) h o l d sm a n yf e a t u r e so fo b j e c t - o r i e n t e dt e c h n o l o g y b ya p p l y i n g i tt o d i s t r i b u t e dc o m p u t i n g d e v e l o p e r sc a i l e a s i l yc o n t r o lt h ec o m p l e x i t yo f d e v e l o p m e n t ,d e p l o y m e n t ,a d m i n i s t r a t i o na n dm a i n t e n a n c eb yd o ci n h e t e r o g e n e o u se n v i r o n m e n t s w e bi so n eo ft h em o s ti m p o r t a n ta p p l i c a t i o n si ni n t e m e t i n t r a n e t a tt h e s a m et i m ei ti sa l s oo n eo ft h e t y p i c a ld i s t r i b u t e da p p l i c a t i o n s f o ri t s h e t e r o g e n e i t y b u ti ti saf a c tt h a tt h i st e c h n o l o g yc a l ln o ts u p p o r tt r a n s a c t i o n s p r o c e s s i n ga n di n t e g r a t ew i t ho t h e rs y s t e m sf o ri t ss e v e r a ll i m i t a t i o n s i nt h i s p a p e r , t h et o p i ct h a tr e s e a r c ho nh o wt oa p p l yd o c t om a k e0 b j e c tw e bi s d i s c u s s e d i n t h i sp a p e r , d i s t r i b u t e dc o m p u t i n ga n dd o ca r ei n t r o d u c e di ng e n e r a l t w o t y p i c a lt e c h n o l o g i e so fd o c c o r b aa n dc o m d c 0 ma r ed i s c u s s e di n d e t a i l ,i n c l u d i n g t h e i rp r i n c i p l e sa n df e a t u r e s a l s ot h e s et w od i f f e r e n t t e c h n o l o g i e sa r ec o m p a r e dw i t he a c ho t h e r b a s e do nt h ek n o w l e d g eo fw e b s t r u c t u r ea n dd o c s e v e r a lm o d e l sa p p l y i n gd o ct ow e ba r ei n t r o d u c e d 0 n e w a yt oi n t e g r a t ew i t hd i f f e r e n td i s t r i b u t e do b j e c t si nw e ba n di n t e r o p e r a t i o n b e t w e e nt h e ma r ed i s c u s s e dt o o w i n d o w s1 3 l i s t r i b u t e di n t e r n e ta p p l i c a t i o n s ( d n a la r c h i t e c t u r ei s a f r a m e w o r kf o rb u i l d i n ga p p l i c a t i o n sb a s e do nt h ew i n d o w sp l a t f o r mt h a t u n i f i e sa n di n t e g r a t e st h ep e r s o n a lc o m p u t e ra n dt h ei n t e r n e t t h ed o c t e c h n o l o g yu s e di nt h i sa r c h i t e c t u r ei sc o 舯c o m u t i l i z i n gt h i sm o d e l w e c a l le a s i l yc o n s t r u c tw e b b a s e dd i s t r i b u t e da p p l i c a t i o n s o n en e wm e t h o df o r d e v e l o p i n gc o m - b a s e ds o f t w a r ei sp u tf o r w a r d u s i n gw i n d o w sd n a m o d e l a n dt h i ss o f t w a r ed e v e l o p m e n tm e t h o d ,w ed e s i g na n di m p l e m e n to n e d i s t r i b u t e da p p l i c a t i o nb a s e do nw e b c o m d u t e rn e t w o r km a n a g e m e n t s y s t e mo fc h i n aa i r p o r tc o n s t r u c t i o nc o r p o r a t i o n k e y w o r d s :d o e ? w e b c o r b ac o m d c o md n a c o m p o n e n t l i 绪论 北力交通人学坝i 学位论文 论文的背景和意义 绪论 随着计算机网络应用的刁;断深入和普及,大规模的计算机网络将不 断增加。在这种计算机网络q ,不仅硬件设备型号、种类、规模相异, 而且操作系统平台、程序设计王f 境及应用也各不相同。人们迫切希望在 这种计算机网络上共享信息、设备和软件,这就要求支撑这种应用的分 布式系统具有良好的互操作性、可迁移性和可重用性,集成各组件产生 一个连贯的可操作的系统。 分砸式计算技术是指在网络计算平台上开发、管理和维护以资源共 享和协同工作为主要应用目标的分布式应用系统。最初的分布式计算技 术基于传统的客户机服务器模式,但该模型在伸缩性、易管理性和性 能方面有一定的限制因素,在解决分布系统复杂问题如异构环境下的应 用互操作、系统管理、系统安全等问题时存在很多困难。面向对象技术 给分稚式应用提供了许多特性,如可封装性、可重用性、可移植性及可 扩展性,所以它更适合于分布式计算环境,有处理这些复杂系统的能力。 将面向对象技术应用于分布式系统形成分稚式对象技术则成为一种必 然。 w e b 是i n t e m e t i n t r a n e t 上一种典型的分稚式应用,但w e b 技术目 前仍存在着不足。例如,w e b 技术采用h 订 p 协议很适合于发布静态主 页,但由于它是一种无状态协议,很难支持联机事务处理和系统集成。 而分布式对象技术的产生则为解决w e b 中难以解决的问题提供了途径。 目前的企业应用多数为分布式的应用,构建i n t r a n e t 并在其上设计实现各 种w e b 应用已成为一种趋势。因此利用分布式对象技术构建对象w e b 非 常具有实际意义。 本文概述分布式计算和分布式对象计算技术,剖析两种分布式对象 技术c o r b a 和c o m d c o m 的技术原理和特点,并对这两种技术做 了比较,介绍将分布式对象技术与w e b 结合的几种模型,给出一种基于 c o r b a 的面向对象的w e b 计算模式。在对基于c o m d c o m 技术的 w e b 分御应用框架进行重点分析后,针对实际的应用提出一种基于c o m 绪论 北方变通人学颂i j 学位论盅: 的软件工程丌发方法。 最后,利用本文提出的丌发方法在中国民航机场建设总公司的i n t r a n e t 上实现了网络信息管理系统。目前,该系统大部分已经投入使用。实际 使用表明,系统易于维护、管理,具有较高的可靠性、可扩展性和安全 性,并具有复杂的数据库事务处理能力。 论文的主要内容与章节安排 本文共分五章。 第一章分布式计算和分靠式对象计算主要研究分布式计算的模型 基础c s 计算模式,在分析传统的两层c s 计算模型的优缺点后, 给出一个三层c s 模型。分厕j 式对象计算技术是面向对象技术与分布 式计算技术的结合,本章介绍其中的一些重要概念、分布式对象计算的 典型结构以及流行的技术。 第二章两种分布式对象技术的分析介绍c o r b a 和c o m d c o m 这两种不同技术的基本原理,重点分析d c o m 体系:包括c o m 、d c o m 以及建立在c o m d o o m 基础上的a c t i v e x 技术,简要介绍c o m + 。 最后对这两种不同的技术进行比较。 第三章面向对象的w e b 计算介绍w e b 的体系结构,分析将分布式 对象技术与w e b 结合的几种模型,给出一种基于c o r b a 的面向对象的 w e b 计算模式。 第四章基于c o m d c o m 的w e b 应用框架d n a 本章对一个 基于c o m d c o m 技术的完全w e b 分布应用框架进行分析。针对实际 的应用提出一种基于c o m 的软件工程开发方法。 第五章一个d n a 体系结构应用系统的实例基于d n a 结构利用 第四章提出的软件工程开发方法实现了中国民航机场建设总公司的网络 信息管理系统。详细讨论开发方法的应用和实现中的若干问题。 2 第一章分布,汁算分布对象汁钟北方交通人学坝i j 学位沦义 第一章分布式计算与分布式对象计算 随着网络技术的发展,分布式计算( d i s t r i b u t e dc o m p u t i n g ) 技术越 来越受到重视,因为人们使用网络的目的是要充分利用网络系统可支持 的各种服务,以到达预期的目的。但是,在网络分布系统中所需要考虑 和解决的问题要多于和复杂于网络系统中单机所面临的问题。例如,需 要解决在网络分稚系统中各个层次上的异构问题,包括向下层次上的异 构硬件平台、异构的操作系统、异构的网络通信系统,向上层次上的不 同应用系统之间的集成问题。这些都是分布式计算要解决的问题。 1 1 分布式计算 计算机信息系统的发展经历了四代,如图1 - 1 所示: l 叁叁h 坌塑查h 璺竺苎h 坌查苎 : 单机系统管理i多机系统管理 图卜1 计算机信息系统与管理模式分类 集中式以主机系统为代表,分散式是随着p c 和个人工作站的发展而 将用户、丌发和管理工作集于一身产生的。网络式是随网络的发展而形 成的一种不完善的多系统管理方式。 分布式则是网络一体化和并行处理分布化的产物。由于分斫j 式系统 是在网络基础上建立起来的,各个网络系统的不同造成了管理方式的不 同,所以在分靠式系统中很难给出一个管理模式的规范。总体上讲,分 粕式的管理方式介于分散和集巾之间,是种有序的分散、灵活的集中。 它与网络式管理模式的区别在于:它提供了服务的透明性和任务执行的 并发性。 分布式信息系统为企业或部门的管理、信息交流互访和协同工作带 来了方便,但它在可扩充性、透明性、一致性存在一些棘手的问题_ “。 c s ( 客户机服务器) 计算模式的产生则为分柿式应用系统的开 发应用提供了理想的组织方法。虽然传统的c s 结构在解决分布式应 用中仍存在一些缺陷,如扩展性不够、缺乏安全和访问控制机制等。但 ;一章分布计算。,分布,对象t 7e 万交通人学坝i 。学位论文 采用一些新技术如对象技术、多层次结构,将会改进这种模型的缺陷。 从根本上说,现在的分前i 式计算技术所采用的体系结构仍是这种c s 模式。 c s 模式适合于传统的稳定的网络环境和应用程序,但在不断增长 的网络信息资源及移动计算、信息服务等新兴应用领域面前缺乏智能、 动态的信息处理能力。而a g e n t 和跨平台动态语言( 如j a v a ) 的出现, 为以上问题提供了解决方法。其中m o b i l ea g e n t t 。2 l 是综合了a g e n t 技术 的一种新型分布式计算技术,它的智能性、动念性和移动性为分稚式计 算带来了新的思想和优秀特性。 现在所说的分布式计算技术是指在网络计算平台上开发、部署、管 理和维护以资源共享和协同工作为主要应用目标的分稚式应用系统。 1 2 c s 计算模式 现在的分御式计算技术从根本上说采用的仍是c s 模式,那么c s 结构究竟有哪些优越性,它的工作机制是如何满足分布式计算的需要 昵? 1 2 1c s 计算模式的概念 简单地说,客户机服务器计算模式就是把应用分割成几个部分, 并将它分配到整个网络上,这样就可以充分地利用计算机资源。根据p a t i c k s m i t h 定义: 客户机是一种单用户j i :作站,它提供与业务应用相关的表现、计算、 连网、访问数据库和各类接| 1 服务。服务器是一种存储共享型的多用户 处理机,它提供业务所需的计算、连网、数据库管理和各类接口服务。 c s 结构由客户机、服务器组成,它们之间的通讯是通过严格定义的标 准应用程序接口a p i 和远程过程调用( r p c ) 实现的。该定义是从用户 角度给出的。若从分布式系统角度对c s 下定义: 在一个c s 计算模式中,个或多个客户,一个或多个服务器与操 作系统及进程通信机构协蒯:l :作,形成允许分布式计算、分析、表示和 分布的合成系统,这种计算机体系结构就称为c s s ( c l i e n t s e r v e r - s y s t e m ) 。严格说来,不应将c s 计算与具体的计算机系统等同起来。 因为c s 模式实际上只定义了一种机制,或者说是一种合作关系,即 4 笫一乖分布,汁算。o 分布a 对象汁簟7 北力交通人学f i ! j i 学位论义 进程之间“请求”与“合作”的关系。客户机通过远程过程调用r p c 请 求服务程序提供服务,服务器执行所需的功能,然后将结果返回给客户 机,客户机和服务器通过网络实现无缝的网络计算。进一步说,当一个 硬件平台上的执行进程打丌一个通信管道,并等待另外一个进程与之通 信时,该进程就可以被认为是一个服务器,发出通信请求的并通过服务 器通信的进程则被称为客户机i 。客户机和服务器的关系是动态的,仅 保持在从请求开始到服务完成的这段时间内,因此客户机和服务器的作 用是相对的,客户机也可以有服务器的作用,服务器同样也可以起到客 户机的作用。 1 2 2c s 计算模式的体系结构 c s 计算模式是以网络为基础、以驻留数据库管理系统等服务程序 的服务器为后援、以运行前台应用程序的微机为工作站的体系结构。一 个c s 计算环境由三个元素组成:客户机( c l i e n t ) 系统、服务器( s e r v e r ) 系统以及中间件( m i d d l ew a r e ) ( 图1 2 ) 。 客户机系统服务器系统 服务器 应用 图卜2c s 计鼻模式的体系蛄构 在此基础上,可以将其进一步细分,如图1 3 所示。 一、客户机 客户机是运行应用程序的客户部分。它运行在一个提供图形用户接 口g u i ( g r a p h i c su s e ri n t e r f a c e ) 或面向对象的用户接口o o u i ( o b j e c t o p e r a t i n gu s e ri n t e r f a c e ) 及能访问分布服务的操作系统上。操作系统的 基本任务就是把工作传给 - 洲件,让它处理非本地服务。客户还可以运 行分布式系统管理软件d s m ( d i s t r i b u t e ds y s t e mm a n a g e m e n t ) 的一部分。 这部分可大可小,既可以是管理p c 的一个简单代理软件,也可以是一 第一章分布八汁算o 分布对象汁;北_ ,j 变通人学帧i 。学化沦史 客户机中间件服务器 异构数据库访问中间件 分布式对象管理结构模型 与对象请求中间件 t c o r b a 、o r b ) 分布式系统管理平台与管 理中间件( $ n m p ,c m i p , d m e ) 网络操作系统中间件r p c , m e a s a g e 传输堆栈中阃件n e t b i o s 、 t c p n p 、i p x s p x 、s n a 、 o b j e c t s g r o u p w a r e o l t p d b m s d s m 操作系统 服务基础 通信基础 图1 3c s 系统体系结构 个管理节点整个i j 端的d s m 应用程序。 二、服务器 通过底层的通信设施运行应用程序的服务器部分。高层上可以有下 面的服务平台:s q l 数据库、t p 监视器、群件服务器、对象服务器等。 这些服务器依靠操作系统与输入服务请求的中问件联系。服务器也目以 运行d s m 的一部分,它可以是一个被管理的p c 上的一个简单代理到 个管理节点整个后端的d s m 应用程序等。 三、中间件 1 功能 在c s 应用模式下,i i j f j :是用来支持客户+ j l # u n 务器进行会话的 各种分椰式软件,它是c s 结构的枢纽系统。中间件作为前端客户机 和后端服务器之间的一个中1 1 l j 层,为应用程序处理提供了如下功能:它 一般包含应用逻辑,负责接收客户端的应用请求,对请求做出响应处理 后将请求交给后端服务器,并负责将服务器的处理结果返回给客户端。 其它与中问件相关的操作包括小列数据格式之| 日j 的时蚓同步和转换。 引入中闻件这一附加层的目的就是让客户同服务器的一般抽象进行 交互,而不是和具体的主机或是进程进行交互。通过抽象层也提供不同 的服务,这样就使得中间件提供的服务和服务器端功能的界限模糊。这 6 笫一书分布a 计臂j 竹柿对蒙| 1 曹北力交通人学坝i “位沦文 些抽象让应用程序按照标准a p i 来开发而不用知道外部功能的位置和实 现细节。 2 分类 按层次结构大致可将中间件分为以下五层:传输堆栈( t r a n s p o r t s t a c k ) 中间件、网络操作系统中间件、分布管理中间件、分布式对象管 理结构模型与对象请求中间件、异构数据库访问中间件i ( 包括s q l a p i 、o d b c 【“5 1 、o l ed b 、j d b c f “1 等) 。如果按中间件所起的作用和采 用的技术将其分为如下几种类型:基于数据库的中间件、基于r p c 的中 间件、基于t pm o n i t o r 的中闻件、基于o r b ( 对象请求代理,o b j e c tr e q u e s t b r o k e r ) 的中间件、基于消息的中间件m o m 。 与传统的集中式计算机相比,c s 计算模式使得客户机能够共享网 络内的各种资源和设备,便于实现多个计算机系统的互连、互操作和集 成,提高了整个系统的可靠性和可用性,配置灵活,伸缩性和扩展性好, 且费用低。由于客户机和服务器分工明确:客户机注重于传统的应用方 面的专门工作( 如表示逻辑等) ,服务器则侧重于数据管理工作,因而有 可能对它们分别加以商度优化,从而使系统具有可移植性、可操作性、 规模可变化以及高效性等特点。 1 3 三层客户机服务器模型 1 3 1 两层客户机服务器模型 传统的客户机服务器楔j 是一种两层模型。在两层模型燃,程序 逻辑在客户机与服务器这两种物理位置之间分担,应用程序的业务逻辑 必须物理性地驻留于客户端,或在后端d b m s 罩以触发器或存储过程的 形式实现。这种两层的客户机服务器方案的优点在于实现数据访问相 当简单,g u i 可与数据源直接约束在一起,数据维护的所有细节都可以 得到自动控制。但是它也存在苻很多的不利因素。尽管数据访问得到了 简化,但却缺乏灵活性,我们通常无法对自己与数据源的交互作用进行 完全的控制,因为这种控制是自动的。额外的管理会消耗客户机资源, 并可能导致应用程序的性能下降。 两层客户机服务器模型存在以下三个方面的限制因素: 不可伸缩两层模型无法超越客户机的物理界限,而且服务器也会 m 常分布计算1 j 分布对象叫i 儿y 交姬人学坝i 学位论义 禁止这种模型的伸缩。 不易管理由于不能封装商业规则,也升i 能对这些规则进行集中配 置,所以常用程序的重用也不方便。 性能较差因为将图形界面与数据源绑定在起,所以会消耗客户 机的主要系统资源。这对客户机来说是一个沉重的负担,会导致系 统性能的下降。 正是由于两层客户机服务器方案存在诸多限制,所以又提出了一 种新的三层服务器模型。 1 3 2 三层客户机服务器模型 三层客户机服务器模型”7 i 以构建分割式应用程序为基础。对一个 应用程序进行分割后,可将代码划分为不同的逻辑组件,在三层的客户 机服务器模型中,这些逻辑组件分为三个逻辑层:用户服务、业务服务 和数据服务,它们共同组成一个应用程序。这种三层的设计模型称为“服 务模型”。三种服务的属性如i i : 用户服务提供信息和功能、浏览定位,保证用户界面的致性和 完整性; 业务服务 一致性; 数据服务 性。 共享的业务规则,从数据中生成业务信息,保证业务的 数据的定义、永久数据的存储和检索,保证数据的一致 服务模型的结构图如例i 一4 所示。 用户程序 ; 应用服务器 ; 数据服务器 目i - 4 三晨客户机曩务器蛄构模型 第一章分布计算j 分布,对象| f 钉 北方交通人学坝i j 学位论文 使用服务模型,可以把应用程序的需求分解成明确定义的服务。在 定义了服务之后,需要进一步创建具体的物理构件( 或组件) 来实现它 们。构件是一个或几个服务在物理上的封装,可以通过构件的接口获得 这些服务。构件可以是e x e 或d l l 文件、数据库触发器和存储过程的集合, 或者任何几个其它物理软件实体。构件是由它所提供的服务以及它和其 它构件的相互作用来定义的。根据性能和维护的需求、工作量、网络带 宽以及其它的因素,可以在网络上灵活地部署这些构件。这些构件总是 通用的,并且遵守公开的接口标准,所以它们可以被重用,并能被多个 应用程序所共享,外界所能知道的就是它们的接口。实际上这些物理构 件就是基于o r b 的中间件。这种模型提高了系统的可重用性、灵活性、 可管理性和易维护性【1 4 j 。 这种服务模型的提出以及在上文中提到的一些中间件技术实际已经 包含了将对象技术应用到分布式计算中的思想,从而在分布式计算环境 中提供对象技术的优点。下面就让我们看一下面向对象技术是如何应用 到分稚式计算中去的以及分币旺对象技术中的若干关键问题。 1 4 分布式对象计算d o c 技术 在分布式客户服务器计算机系统的建立及其应用系统的,r 发过程 中,构建分布式系统要比以前想象的复杂的多,例如异构环境下的应用 互操作问题、系统管理问题、系统安全问题等,这些问题在集中计算模 式下是不曾出现的或是不突出的问题。传统的面向过程的技术( 如r p c 、 d c e ) 在丌发大型软件系统。f - 撼露出很大的局限性,在开发复杂的分布 式应用时就显得更加力不从心。另一方面,随着面向对象技术的不断发 展和成熟,面向对象技术有处理复杂系统的能力,使得这一技术应用于 分式计算成为可能j “9 i 。面向对象技术给分布式应用提供了许多特性,如 可封装性、可重用性、可移植性及可扩展性,所以它更适合于分布式计 算环境。这样以而向对象技术为特征的第二代分帕j 式计算技术丌始孕育 并逐渐成熟,这一代技术称为分价式对象计算技术( d i s t r i b u t e do b j e c t c o m p u t i n g ) 。 1 4 1 分布式对象计算技术中的核心概念 1 分布式对象 9 讹一书分布儿汁算,分布,对象汁钎北方交通人学倾i j 学位论文 分柿式对象计算技术的卜要思想是【1 “o i :在分析j 系统中引入种分 布的、可互操作的对象机制,并且把分布于网络上可用的所有资源看作 公共可存取的对象集合,使得刁i 网的对象可以集合在一起。此外,一个 对象客户能够通过定义在分布对象模型上的接口来访问分布系统的可用 对象。 对象技术中的常规o o a ( 面向对象分析) 和o o d ( 面向对象设计) 方法可以直接应用于分布式系统的分析和设计,而传统的o o p ( 面向对 象编程) 环境( 例如c + + 或s m a l l t a l k ) 在直接应用于分布式应用系统的 程序设计中遇到了问题。传统的对象与访问该对象的程序只能存在于同 一进程中,并且只有相关程序设计语言的编译器才能创建这些对象并感 知这些对象的存在。而外部进程是无法了解和访问这些对象的。这就意 味着在常规的分枷式客户服务器应用中,客户进程不可能直接访问异 地服务进程中的常规对象,为此爿有分布式对象的概念。 传统的对象可以被看作是封装了数据和作用于这些数据的操作的自 包含的实体。这些对象支持的操作( 又称为方法) 是依赖于对象的内部 状态的。对象技术通过将相关数据及操作与系统的其它部分隔离,而使 得系统的构建与维护工作变得容易。传统的对象只“驻留”在一个程序 之内,在程序编译时也不会分裂成多个实体。与此不同的是,分前i 式对 象可以驻留在一个网络的任何地方,作为一个物理上独立的实体存在并 可以被其它对象远程调用。 分稚式对象”1 存在于网络。 j 的任何地方,可被远程客户应用以方法 调用的形式访问。至于分前i 对缘是使用何种程序没计语言和编译器所 创建,对客户对象来说是透i ;! j 的。客户应用无须知道它所访问的分柿式 对象在网络中的具体位置以及运行在何种操作系统上,该分布式对象可 能存在于客户应用的相同计算机上,也可能分布在由广域网( 如i n t e r n e t ) 相连的不同计算机上。分伽式对缘具有动态性,它可以在网络上到处移 动。分靠式对象可以通过r l 川:( m i d d l ew a r e ) 包含的标准通讯协议无 缝地进行通信以构成一个完懿而健壮的系统。这样的对象框架保证了分 布对象问的高度透明的互操作性。 2 软构件( 组件) 独立于特定的程序设计语言和应用系统、可重用和自包含的软件成 分称为软构件。 0 旃一章分布汁鳕,分布a 对象计辅,i t :办变姬人学坝i 。学位论义 分布对象是一种典型的软构件,它们可以位置透明,语言独立和平 台独立地相互发送消息,实现请求服务。基于分布对象技术的分布式应 用开发就是这些对象组件的刃= 发和组装。这些对象组件成分可以是由 些不同的开发者相互独立地使用不同的语言或工具构造的。 d o c 将对象应用于分布式计算,相对于传统的分夼式计算就拥有了 面向对象的许多特征。如封装性、接1 :3 继承性、参数化类型和基于对象 的异常处理等。使得应用程序能够在抽象的更高层上协同工作。同时为 创建一个能使分布式应用中的服务更易于协作的高层机制提供了基础。 分布式环境的复杂性使得分布式计算要解决的关键问题集中在如下 几个方面:高可靠性、高可用性、对象的定位与选择、强类型接口、负 载平衡、安全性、同步信息和线程化、延迟激活等。这些相应地也成为 了分布式计算的关键技术。 现有的d o c 框架和系统对上述这些关键技术提供了不同的支持。通 常情况下每种框架只实现了某些技术,如网络异构化、对象定位和选择、 同步通信和线程化、延迟激活、安全性等。而其他的一些技术则没有完 全实现。 1 4 2 分布式对象计算技术的典型结构 分布式对象科算技术采用晰向对象的多层客户服务器计算模型, i ;模型将分布在网络上的全部资源( 无论是系统层还是应用层) 都按照 对象的概念来组织,每个对象都有定义清晰的访问接口。创建和维护分 布对象实体的应用称为服务器,按照接口访问该对象的应用称为客户。 在分御式对象计算技术中,客户与服务器的角色划分是相对的或是多层 次的,就是说客户也可以作为服务器,服务器也可以作为客户。而支持 客户访问异地分布对象的核心机制称为请求对象代理( o b j e c tr e q u e s t b r o k e r ,简称为o r b ) ,从o m g ( o b j e c tm a n a g e m e n tg r o u p ,对象管理 组织) 的o m a ( o b j e c tm a n a g e m e n ta r c h i t e c t u r e ,对象管理结构) 参考 模型( o m a 出个对象模型和一个参考模型组成,对象模型用于描述对 象是如何被分布到异构环境中去的) 中可以看到面向对象的分布式计算 的典型结构l “”1 ( 如图1 5 所示) 。 图中,o r b 主要负责实现客户端和对象之问的通信,就如同条总 线一样把分布式系统中的各类对象和应用连接成相互作用的整体,是构 筑一章分布- c 汁斡ij 分布,对象h 钟 图1 5o m a 参考模型接口种类 建分布对象应用、在异构或同构环境下实现应用问互操作的基础。使用 o r b 的是四类对象接口: 对象服务( o b j e c ts e r v i c e s ) 是为使用和实现对象而提供的基本服务 集合。在构建任何分稚应用时,经常会用到这些服务,而且这些服 务独立于应用领域。例如生命周期服务定义了对象的创建、删除、 拷贝和移动的方法,但是它并不指明在应用中如何实现这些对蒙。 公共设施( c o m m o nf a c i l i t i e s ) 是向终端用户应用提供的一组共享服 务接口,但这组服务不像对象服务那样基本。例如系统管理、组合 文档和电子邮件服务就可以归入公共设施中。 领域接口( d o m a i ni n t e r f a c e s ) 是为应用领域服务而提供的接口。例 如,现在o m g 组织为p d m ( p r o d u c td a t am a n a g e m e n t ,产品数据 管理) 应用制订了规范,和:浚规范中定义了8 个使能器,描述了1 2 个功能模块及其接口,明确了p d m 系统内部以及p d m 系统与其应 用系统之蒯交互的方式。 应用接口( a p p l i c a t i o ni n t e r f a c e s ) 是由销售商提供的、可控制其接 口的产品,它相应于传统的应用表示。因此o m g 组织不对它们做标 准化工作。应用接口处于参考模型的最高层。但是,假如随着时间 的推移在某些特定的应用领域出现了被广泛使用的服务,那么它可 能会成为o m g 标准化的对象。 与第一代的分布式计算技术相比,分布对象技术的实质性进步在于 使面向对象技术能够在异构的网络计算环境中得以全面、彻底和方便的 1 2 第一章分布j _ l = 计算,分布a 对象汁算北方交通大学坝i j 学位论立 实施,从而能够有效地控制系统的丌发、管理和维护的复杂性。 1 4 3 分布式对象计算的主流技术 目前分布式对象技术已经成为建立应用框架 u - u 3 | ( a p p l i c a t i o n f r a m e w o r k ) 和软构件【l 。4 1 ( s o f t w a r ec o m p o n e n t ) 的核心技术,并形成了 三项具有代表性的主流技术,即o m g 的c o r b a ( c o m m o no b j e c tb r o k e r a r c h i t e c t u r e ,公共对象请求代理结构) 、m i c r o s o f t 的d c o m a c t i v e x ( d i s t r i b u t e dc o m p o n e n to b j e c tm o d e l ,分布式组件对象模型) 和s u n 的j a v a r m i 。 o m g 所制定的分布对象计算标准包括c o r b a i i o p 、对象服务、 公共设施和领域接口规范。遵照这些规范开发出的分布式计算软件环境 可以在几乎所有的主流硬件平台和操作系统上运行。现在,c o r b a i i o p 已经成为i n t e m e t 上实现对象互访的技术标准,o m g 的i i o p 也已成为许 多公司进行系统集成的基本协议。 d c o m a c t i v e x 是m i c r o s o f t 的构件模型,集中反映在a c t i v e x 技 术中。m i c r o s o f t 的优势主要表现在应用和市场上,并且m i c r o s o f t 决定支 持o m g 提出的o l e c o m 与c o r b a 的互操作标准,从而使c o m 的 对象能够与c o r b a 的对缘进行通信。 j a v a 是一个应用程序丌发i f 台,它提供了可移植、可解释、高性能 和面向对象的编程语言及运行环境。r m i ( r e m o t em o d e li n v o c a t i o n ) 是 分布在网络中的各类j a v a 对象之阳j 进行方法凋用的o r b 机制。c o r b a 技术与j a v a 技术存在天然的联系,因为c o r b a 标准中的许多内容( 例 如i d l 、i i o p 标准) 就是以s u n 提交的方案为核心制定的。由于这两种 技术的天然联系和各自的优势,c o r b a 与j a v a 的结合成为必然。 1 5 小结 分斫i 式计算是当前研究的一个热点问题。本章介绍了传统的解决分 布计算的c s 模型,在分析它的优缺点之后给出三层c s 模型。分布 式对象计算技术是对象技术与分和式计算技术的结合,适合于解决分布 计算中的问题。下一章重点研究两种不同的分布对象模型。 鳊啦分布汁算j 分布对象计辅il :力变通人学颂1 学位论义 【参考文献】 1 - l 】sjtc o n d i l e ,d i s t r i b u t e dc o m p u t i n g ,t o m o r r o w sp a n a c e a - - a n c u r r e n t t e c h n o l o g y , b t t e c h n o l o g y , v 0 1 1 7 n o 2 a p r i l1 9 9 9p 1 3 p 2 3 。 【l 一2 】史殿习等,基于a g e n t 的分布式集成环境,国防科技人学学报, 期,1 9 9 7 年6 月,p 7 2 p 7 6 。 【l - 3 d i s t r i b u t e dc o m p u t i n go v e r v i e w , 山【p :w 疆碰q u q 山i l k 。虹! i n ,1 9 9 8 。 i n t r o d u c t i o nt o 第1 9 卷第4 【1 卅来晓梁、刘东生、许满武,中间什及其在三层客户机服务器模型中的应川, 计算机应用,第1 9 卷第7 期1 9 9 9 年7 月,p 3 5 p 3 8 。 【i 5 m i c r o s o r c o r p o r a t i o n ,o d b c3 0p r o g r a m m e r sr e f e r e n c e ,o c t o b e r1 9 9 6 。 i - 6 g h a m i l t o n 、r ,c a t t e l l ,j d b c :aj a v a s q l ,s u nm i c r o s y s t e m s , i n c ,f e b j 9 9 8 。 1 - 7 】邓芳伟等,基丁处理分布的c s 计算模式的研究,计算机l :科与科学,第2 l 卷第1 期,1 9 9 9 年l 爿,p 4 2 p 4 6 。 【1 8 】郊无疾、张建军、朱山风,分布式对象在软件系统集成中的廊_ j ,计算机麻州, 1 9 9 9 年8 月,第1 9 卷第8 期,p 2 4 t 2 6 。 【1 - 9 s c o t t m l e w a n d o w s k i ,f r a m e w o r k s f o r c o m p o n e n t - b a s e d c l i e n v s e r v e r c o m p u t i n g , a c m c o m p u t i n g s u r v e y s ,v 0 1 3 0 n o im a r 1 9 9 8 。 1 - 1 0 n a y e mi s l a m ,c u s t o m i z i n gs y s t e ms o f i w a mu s i n go or a m e w o r k s ,i e e e c o m p u t e r , v 0 1 3 0n 0 2f e b 1 9 9 7 。 1 ii 】j e n s - p e t e rr e d l i c he t a l ,d i s t r i b u e do b j e c tt e c h n o l o g y f o rn e t w o r k i n g ,i e e e c o m m u n i c a t i o n s m a g a z i n e ,o c t 1 9 9 8 ,p 1 0 0 - - - p i l l 。 【1 1 2 o b j e c tm a n a g e m e n tg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师招聘之《幼儿教师招聘》考前冲刺练习题含答案详解【达标题】
- 教师招聘之《幼儿教师招聘》模拟考试高能及答案详解(典优)
- 辽宁工程广播应用方案(3篇)
- 教师招聘之《幼儿教师招聘》考前冲刺练习题库提供答案解析及参考答案详解【预热题】
- 建设工程档案检查方案(3篇)
- 嘉兴各类工程拆除方案(3篇)
- 教师招聘之《小学教师招聘》考试综合练习往年题考附答案详解
- 2025年苯甲酰H酸合作协议书
- 2025年教师招聘之《幼儿教师招聘》试题及答案详解(夺冠)
- 社交电商团长招募与培训系统创新创业项目商业计划书
- 2025秋季一年级上册数学教学计划进度表【第3版】
- 2024年麻精药品培训考核试题(含答案)
- 2025循环水处理试题及答案
- GB/T 40344.4-2025真空技术真空泵性能测量标准方法第4部分:涡轮分子泵
- 2025秋统编版八年级上册语文教学计划
- 飞书使用培训课件
- DB42T 900-2013 公路隧道监控量测技术规程
- 《现代供电技术》课件(共八章)
- 2025年公共设施管理行业研究报告及未来发展趋势预测
- 双胎妊娠护理查房
- 2025年浙江省中考语文试题卷(含答案解析)
评论
0/150
提交评论