




已阅读5页,还剩72页未读, 继续免费阅读
(微电子学与固体电子学专业论文)多层分布式信息系统框架的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
研究生论文多层分布式信息系统框架的研究 多层分布式信息系统框架的研究 专业:微电子学与固体电子学 硕士生:何俊 指导教师:彭自成副教授 摘要 随着中间件的发展与成熟,三层式或是多层式体系结构逐渐成为信息系统 的发展趋势。本文对分布式信息系统多层式的结构与框架进行了研究,阐述了在 运用s v b 黯c 提供的e a s e r v e r 应用服务器基础上使用高效率的4 g l 工具 p o w e r b u i l d e r 对多层式系统进行开发的原理和方法,并研制出一个三层式结构的 通用的系统框架。本文重点说明了三层分布式系统框架的设计过程和实现步骤, 包括框架服务器端和客户端的领域专用构件框架、可视化组装框架以及连接框架 的设计和实现。并以一个分布式m r p 订购管理模块为实例,说明如何应用该 系统框架去开发三层分布式系统。 该系统框架为实现多层分布式信息系统应用建立了一个功能丰富的开发环 境。通过应用该开发框架,可以减少软件开发过程中大量的重复性工作,大大提 高项目的开发效率和软件产品质量,缩短开发周期,实现软件复用。 关键词:三层式分布式系统应用服务器e a s e n ,c rp o w c r b u 日d c f 框架 研究生论文多屡分布式信息系统框架的研究 ,i t ht h ed e v e l 叩m e ma 1 1 dm a t u 阳t i o no fm i d d l e w a r e ,m u l t i t i e ro rt h r e c t i c f a r c h i t e c t u r eh a v eb e c o i mt h ct e n d e yo fj i l f o 啪a t i o ns y s t e md e v e l o p m c n t t l i i s p a p 町d os o m ef e s e a r c ht 0t h e 丘丑m e w o r ko fm u l t i t i e ra n dd i s t f i b u t e da p l p l i c a t i o l l s , d 虹c u 鲒e st h eb a s ep r i n c i p l e sa n dm e t h o d so fd c v e l o p i i l gm u n i - t i c ra p p l i c a t ;d 璐b y u s i n g1 1 i 曲e 蜘c i e m4 0 lt 0 0 l p 0 w e f b u i l d e ra n da p p l i c a t i o ns e r v e r e a s e c r w h i c hw a sd e v e 】o p e db ys y b a s e ,a n dd e v e l o p e dac o m 啪n 劬m e w o r kw h i c hc a nb c e a s i l yu di nt h ed e v e l o p m e n to fm u n i t i c ra p p l i c a t i o n s t h i sp a p c fi n t m d u c e st h c d e s i g np r o c e 鹞a i l di m p l e m c n t a t i o nf l d w i l ld c t a i l ,i n c l u d i l l gt l 嶂d e s 谵no fv i s u a l 触m e w o r k ,c o n n c c t i o n 丘a m e w o r k ,d o m a i nc 0 舢n 触m e w o f ki i i r v c fa n dc l i c n t , i l l u s t r a t e sh o wt od e v c l o p 叫h i - t i c f 柚dd i s t r i b i l t c da p p “髓t 蠡d 璐w i i ht h c 劬m 哪o r k b y u s i i l g t h ed e v e l o p m c n t o f a m r p h s u b s y s t e l n p u f c t i a s e f n 柚a g e m e n ts y s t e m 舔a n e 硪m l p k t h c 丘a m e w o 嫩p v 虱| cn m n i - t 衙a n dd i s t f m t e da p p l 自c a t i 0 璐w 妯a 向u n d a t i o n 柚d 姐e v i r o n m e n tw i l ha b t l n d a t 缸n c t i 0 璐a f t e ru s i i l gt h c 矗a m c w o r k ,t h e d e v e l o p e r sc a nr e d u c et l l c 咒p c a tw o r k 妯t h es o f t w a d c v e l o p m e m ;g r c a l l yi n c r e a 踞 t h cd e v c l o p m c me f f i c i e ya n ds o f l w a r cp m d u c t sq u a l i l y ;s h o r t e nt h cp e r i o do f s o f t w a r ed e v e l o p n l e m ;r e a l i z et h cr c u s eo fs o r w a r e k e y w o r d s :t l l r e e t 氓掘t r i b u t e da p p l i c a t i o n ,a p p l i 髓t i o n f 、,e r e a s e r v e f , p o w e f b u i l d e l 丘砒n e w o r k 研究生论文多层分布式信息系统框架的研究 第1 章综述 1 1 多层分布式信息系统概述 1 1 1 分布式信息系统的概念 在信息网络技术高速发展的今天,随着i n t e m e t 和i n t r a n e t 的不断普及和企 业应用系统的不断扩大,现代企业管理信息系统面临着如何跨越u 埘,w , i m e m c t 平台建立可伸缩的应用结构这样的难题,传统的客户朋艮务器体系下的两 层应用程序,把业务逻辑过分集中于客户端的处理模式,已经满足不了应用的扩大 发行、维护和升级的要求。在这样的背景前提下,计算机应用向多层应用的发展 已成为必然趋势。 如何有效合理地解决上述问题呢? 那就是使用分布式应用技术【l l ,它可以满 足实现信息系统具有易维护性、可扩展性、可靠性,以满足复杂的、不断变化的 业务需求,是目前企业信息系统开发技术发展的潮流。 多层式信息系统是指三层及其以上的计算机信息系统,即在传统的( 猖应 用系统中插入一层或几层中间件( m i d w a r c ) 或称为应用服务器( a p p l i c a t i o n s e r v e r ) ,由中间件处理应用系统的业务逻辑。客户端程序只处理界面的显示,它 不需要了解数据是如何被存储及维护的,由中间件与数据库通信。 客户端因为不需要与数据库通信,所以不需要安装数据库的客户端程序和 数据库驱动程序,可以使客户端程序变得更小、更快。通过对中闯件层有效的组 织和管理,采用负载平衡和动态伸缩等技术,可以将客户端与服务器高效地组合 在一起。 研究生论文多层分布式信息系统框架的研究 1 1 2 传统c s 模式的局限性 毋弓一回一心 图卜1 客户机服务器结构图 传统的客户机,服务器结构如图1 1 ,将业务逻辑处理与用户界面安装在客 户端,少量的商业逻辑以存储过程的形式放在数据库服务器中,通过网络连接访 问远端服务器上的数据,从而形成了两层应用模式。这种模式的主要缺点是: ( 1 ) 业务逻辑有所改动,都将导致所有客户端的应用程序的改动,增加了很 多的系统维护成本。 ( 2 ) 业务逻辑驻留在客户端,易造成客户端的工作负荷过重,增加了用户的 硬件消耗,增多了用户硬件投资。 ( 3 ) 业务逻辑分布在各个客户机上,缺乏良好的可维护性和扩展性,公共的 业务逻辑模块不能共享、重复使用。 ( 4 ) 客户机通过网络连接访问远端的服务器上数据,不仅降低了本机的性能。 而且也降低了服务器的性能,并且某些用户在获得了定的权限后可以绕过客户 端应用而直接操作数据库,对数据的安全构成了威胁。 库 簧耋 务; 一 业n 一 和忖 一 面盯 一 再& 一 一户蚰一用h一;h h 、 一代0一旧爵 百务一 一臆 一机库一 户拇 一 客数 一 研究生论文多层分布式信息系统框架的研究 1 1 3 多层分布式模式的优点 三层模式j 客户机( c i i 。- t ) ;用户界面和部分业务逻辑1 应用藤务磊( p p l i c i t i s e r v r ) :主要业务连辑 数据库雕务器( d a t l b a s es e r v e r ) :数据库 图1 2 三层式系统结构图 ( 1 ) 瘦客户端:由于客户端只负责操作界面的表示逻辑,单用浏览器或是很 少客户端应用程序即可胜任此项工作,减轻了客户机的负担,降低了对客户机的 硬件配置要求,真正实现瘦客户端; ( 2 ) 易维护:由于将应用系统的业务逻辑迁移到中间层,当事务处理发生变 化时只需更新位于应用服务器上的业务组件模块,无需重新升级客户端的程序, 并且具有某些通用处理功能的组件可以复用到其他的应用系统中,这样可大大降 低系统的维护费用; ( 3 ) 易扩展:某应用层的变化并不影响其他层,给系统的升级带来了极大的 方便。多个应用层可以分布在不同的机器上,当业务逻辑比较复杂时,可以均衡 负载配置: ( 4 ) 重用性强:由于应用层提供客户的共享服务,把业务逻辑封装在组件 ( c 0 n l p o m m ) 中,并且部署在应用服务器上以供多个客户端调用,这种组件式开发 大大提高了应用系统的可重用性; 研究生论文多屡分布式信息系统框架的研究 ( 5 ) 开发效率高:多层结构中各层在逻辑上相互独立,可同时进行各层软件 的开发,从而提高系统的开发效率; ( 6 ) 安全性高:可以通过使用不同的访问约束,来分层隔离敏感的算法和数据, 大多数应用服务器都提供了强大的安全性支持。 另外,组件可共享数据库的连接,降低了数据库服务器的负担;组件功能独 立,有利于开发团队的分工与合作。 1 2 应用服务器概述 目前在i m c m c 仉n t r a n e t 凰t f 柚e t 环境中,企业级应用系统大多采用三层或多 层应用模式。为了方便开发、部署、运行和管理基于多层结构的应用,需要以网 络和分布式计算的底层技术为基础,构建一个完整的应用框架,提供相应的支撑 平台作为多层应用的基础设施,这一支撑平台的关键就是位于中间层的应用服务 器。应用服务器是一个创建、部署、运行、集成和维护多层分布式企业级应用的 平台。 应用服务器又称为“应用服务器软件平台”,是最重要的一类中间件软件。 但它并不意味着是老产品的位置重置,它不是把交易管理、数据访问等诸多中间 件和别的中间件以及技术简单地打包在一起,因为当前的应用服务器软件都是基 于对象或组件技术的,各种中间件功能必须以面向对象或组件的方式提供。此外, 它还需要把另外重要的、增加价值的功能加进来,如对象或组件的部署、运行及 管理功能。 面向对象技术和构件技术的兴起,出现了以j a v a ,e ,b 、d n c o m 和c o 髓a 为代表的分布式对象构件计算模型,使用上述技术的应用服务器中间件涵盖了 传统中间件的功能,完全支持三层多层的软件体系结构发展和软件复用。逐渐 成为中间件产品的主流。随着构件技术进一步发展,j a v 棚b 融合了c o l 圆a 的 优点并演化成为j 2 e e ,m i c r o nd n c o m 演化为n i 强,c o l l b a 也吸收了j 2 e e 的构件,容器思想推出c c m 架构。 研究生论文多层分布式信息系统框架的研究 1 3e a s e r v e r e a s e e r 全名为e n t e i p r i s ea p p l i 斌i o ns c e r ,是s y h s e 公司所出产的一 个高效能、具安全防护的企业级应用程序服务器,可用来执行大型的分布式应用 程序,而在其中包含重要的企业逻辑来存取后端的资料。作为一个高效能、具安 全防护的企业级应用程序服务器,e a s e r v e r 可用来执行大型的分布式应用程序, 而在其中包含重要的企业逻辑来存取后端的资料,以及让浏览器与非浏览器前端 程序同时存取其中的组件。 其实它是结合现有的两种s y b a 产品,如下图【2 4 】所示: 图1 3e a s e r v e r 结构图 p 0 w e r d y n a m o 是一个动态h 1 1 m l 网页服务器,其角色如同m 姗f i a s p 、j a v as e r v l c t 及j s p 一样,是作为、bs c r v e r 功能的延伸,可让w 曲环 境执行程序、存取数据库以及动态地产生网页内容。另外,p 0 w e r d y n a i 也可 以调用j a g i l 甜c r s 中的组件程序执行。 j a g 眦rc o m p o 眦n tm n 鞠c t i o ns e r 他r ( j 哪c t 两 j a g u a rc r s 是一个组件事务服务嚣,顾名思义,它是一个可执行组件程序 ( c o i i l p o n e m ) 以及负责事务管理的应用程序服务器,你可在其中执行多种型态的 组件,并且让多种前端程序存取。 研究生论文多层分布式信息系统框架的研究 1 4j a g u a rc t s j a g u a fc t s 是一个具有枷l t i - t h 化a d 执行引擎,并完整支持多重处理器 ( s m p ) 硬件架构的应用程序服务器,可同时提供超过上千人以上的前端程序联 机。包含从w 西环境而来的浏览器到图形化使用者界面应用程序,下图可以描 绘出j a g i i a rc t s 的功能架构图i 州。 图1 4j a g u a rc t s 的功能架构图 以下我们将逐一说明j a g u 甜c r s 的各项功能以及特性: j a g u a rs e r v e r 所支援的组件型态 j a g u a r 程序的发展是以组件为基础,所有的组件在使用之前都必须安装至 j a g u a rs e r v e r 之中,使用者可以透过j a g u 缸m 卸a g e f 或p 0 w c r b u 埘e r 及 p o w e f j 来布署组件。每一个组件都有其特定的一些组件属性,例如:组件型态、 交易模式、参数型态以及其它属性,这些都可透过j a g u a fm 雒a g e r 来设定。组 件发展者可以使用不同的工具来发展多种j a g i i a r 组件。目前j a g u 盯s e n r c r 所支 援的组件型态有: c o m a c t i v c x ( 只有在m i c m f tw h l d o w sn r 2 0 0 0 平台) p o w e f b u i l d 髓n v o e m e r p r i s ej a v ab e 锄1 0 及1 1 t 0 - 研究生论文多层分布式信息系统框架的研究 c c + + j a v a c o r b a 支持的j a g u a r 前端程序 j a g u 盯s e r v e r 可以支持大部分型态的前端应用程序,从具有丰富图形化界 面前端程序到t h i nc l i e n t 架构的浏览器,而这是因为j a g i l 缸s e n r e r 可以支持多 种协议标准。j a g u a rs e r v e r 所支持的前端程序有: p o w e r b u i l d e a c t j v e x c o m j a 、氇a p p l c t j a v aa p p l i c a t j o n c 及c + + h r m i 仍h t m 儿 与j a g u 盯组件的原理相同,不同型态的前端程序可以存取不同型态的 j a g u a r 元件,而不论当初是使用何种工具或语言来开发的组件,例如: p o w e r b u i l d c r 前端程序可以调用j a v a 组件,j a v a 程序可以调用触i v c x 组件。 如此可以大大地提升组件的重复使用性。 数据库连结 大部分的商业系统都与资料存取有关,因此应用程序服务器与数据库之间 的连接就格外的重要。j a g u 盯s e n r e r 本身内建了数据库连接的管理功能,我们称 之为c o 姗e c t i o nm a 尬g c r 。c o 仰鳅i o nm a 越g e r 可以让j a g u 盯s e r v e r 使用多种方 式连接到不同的数据库,它可支持的数据库连接界面有: o d b c j d b c c h c n tl j b r 盯y1 1 0 o c i7 x o c i8 x 1 1 研究生论文多层分布式信息系统框架的研究 安全性 就像数据库服务器一样,j a g u a rs e r v e r 也有安全性控制。j a g u a rs e r v e r 的安全性控制是以角色( r o l e ) 为基础,角色就类似于数据库服务器中的角色,你 可以指定有哪些使用者或是群组属于哪个角色,这个角色被赋予什么样的权限可 以存取哪些组件,j a g u 盯s e r v e f 就是根据角色的设定来验证使用者的安全性确认。 j 2 e e 平台的支持 e a s e r v e r 提供了对j 2 e e 技术的全面支持,包括企业级j a v a b e a n s ( e j b ) 、 j a v a 小服务( s e r v l e t s ) 、j a v a 命名及目录接口( j n d i ) 、j a v a 事务服务( j t s ) 、 j a v a 事务a p i ( j t a ) 以及j a v a 数据库连接2 o 技术( j d b c 2 o ) 。 队s e r v e r 保证使用者所开发出来符合j 2 e e 规范的程序一定可以部署至 e a s e r v e r 之中,而且也提供了e a s e r v e r 品质的保证。 综上所述,s y b 舔e 提供的队s c r v e f 是开放的电子商务应用服务器,是企业 进行商业交流的理想工具。它拥有完整的开放应用支持、部署、开发、交易处理 以及在企业内外部的重要应用进行集成的能力【3 l 。 研究生论文多层分布式信息系统框架的研究 1 5 本文研究的主要内容 本文叙述了用p o w e r b u n d e r 开发以三层( 多层) 分布式为基本架构的系统 框架的意义和作用,介绍了基于s y b a s e 公司所提供的企业级应用程序服务器 e a s e r v c r 建立多层分布式系统框架的基本原理,并重点阐述了三层分布式系统 框架的设计与实现方法,结合已实际运行的应用实例具体介绍开发过程。 本文共分7 章: 第1 章综述了信息系统分层的意义和应用服务器的概念,并详细介绍 s y b a s c 公司的应用服务器e a s e f 、,e f 。 第2 章论述了软件框架的概念、意义以及研究方法。 第3 章论述了使用开发工具p o w e r b u 湘e r 结合e a s e r v e r 搭建三层式系统 框架的优势、工作。 第4 章讨论了三层分布式系统的总体设计和实现方法,重点介绍系统框架 的总体的结构、设计以及注意问题。 第5 章讨论了三层分布式系统服务器端的设计和实现。具体包括领域专用 构件框架、连接框架等方面的设计和实现。 第6 章讨论了三层分布式系统客户端的设计和实现。具体包括可视化组装 框架、连接框架等方面的设计和实现。 第7 章论述了一个基于框架实例的信息系统具体实现过程,对系统框架的 使用进行说明。 最后是本文的总结和展望。 研究生论文多层分布式信息系统框架的研究 第2 章软件框架 框架是整个或者部分系统的可重用设计部分,表现为一组抽象构件以及构 件实例之间交互的方法,框架是可被应用开发者定制的应用骨架。框架已经成功 地应用到很多领域,包括用户界面、数据处理和通讯等。 2 1 软件框架概述 一个框架是一个可重用的设计,它规定了应用的体系结构,阐明了整个设 计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其 实例之间的协作方法。在很多情况下,框架以构件库的形式出现,但是构件库只 是框架的一个重要部分,框架的关键还在于框架内对象之间的交互模式和控制流 模式。框架为构件提供了重用环境,为构件处理错误、交换数据以及激活操作提 供了标准的方法。 框架并不是包含构件应用程序的小片程序,而是实现了某应用领域通用完 备功能( 除去特殊应用部分) 的底层服务。使用框架的编程人员可以在一个通用 功能已经实现的基础上开始具体的系统开发。框架提供了某个领域应用中所有期 望的默认行为和类集合。具体的应用通过重新组装子类( 该子类属于框架的默认 行为) 或组装对象来支持应用专用的行为。 框架强调的是软件的设计重用性和系统的可扩充性,以便缩短大型应用软 件系统的开发周期,提高开发质量。与传统的基于类库的面向对象重用技术比较, 应用框架更注重于面向专业领域的软件重用。框架具有领域相关性,构件根据框 架进行复合而生成可运行的系统。框架的粒度越大,其中包含的领域知识就越完 整。 总之,框架是一个系统的核心元素,是系统中最本质的部分。系统的各个 组成部分正是通过框架所描绘的方式协同工作共同完成系统的功能,从而表现出 一个完整的系统 研究生论文多层分布式信息系统框架的研究 2 2 框架对软件开发的意义 框架对于软件开发来说意义非常重大,如果把软件开发比喻成搭建楼房的 话,那开发的系统框架就好像用钢筋水泥搭建的楼房架构一样,虽然每座楼房的 个体是不同的,但是都可以在快速建立的楼房架构上快速的实现个体化。我们提 出软件框架也是目的在于建立可供裁剪的框架,以最快、最高效的开发出目标软 件i ”。 知识积累 框架的核心价值是对知识的积累。软件开发是一项知识性的活动。但是知 识存在于人的大脑中,是最难进行积累的。而在软件开发中,代码是最确定的知 识,人和机器通过浏览代码都能够了解代码的目的,而且不会出现不同的理解。 所以,从代码出发进行知识的积累是最佳的办法。框架就是这种思路的产出物。 框架包含了大量的代码,这些代码是对某个特定问题领域中抽象概念及这些抽象 概念之间关系的描述。所以,框架能够胜任知识积累的工作。 虽然代码是框架的核心,但是光有代码的框架是很难为人所理解的。代码 的层次太低,开发人员从代码的角度来完全的理解框架是很困难的。所以,必须 要有层次高于代码的工件。这些工件可以是设计文档、领域模型、u m l 图、 j a v a d o c 。他们的目的都是为了帮助框架的开发人员和使用人员顺利的理解框架。 资产的保护 知识积累本身就是一项对资产的保护工作。而另一项很重要的保护工作就 是软件组织( 尤其是企业) 需要保证对知识的学习和改进是经过合法授权的。例 如,知识的非法外流是任何组织都不希望看到的。将知识积累为框架的形式有助 于缓解这种情况。框架可以是以源码形式发布的,也可以是以库形式发布的,为 不同的框架用户选择不同的发布形式,可以起到权限控制的作用。 鼓励重用 - 1 5 研究生论文多层分布式信息系统框架的研究 框架之所以称为框架,是因为它可以重用。在软件组织中形成以框架为核 心的开发方式,在开发中使用框架,并在开发完成后改进框架。在这个反覆的过 程中。重用的工作就已经开展起来了。 优化架构 框架代表了一种优秀的软件架构。框架定义了扩展方式,从而规范了框架 的使用行为。这使得软件能够保持整体架构的稳定性和一致性。使用框架之后, 客户端可以节省大量的代码,代码结构会更加清晰。 大规模软件设计 大规模的软件设计的关键在于对应用进行合理的划分,并提供一种一致的 方式建立架构。大规模的软件设计要求核心的设计人员工作在一个抽象的层次 上。虽然他们属于设计人员,但是同样需要编写代码,而这些代码则是框架代码。 软件重用是在软件开发中避免重复劳动的解决方案,其出发点是应用系统 的开发不再采用一切“从零开始”的模式,而是以已有工作为基础,充分利用过去 应用系统开发中积累的知识和经验,从而将开发重点集中于应用的特有构成成 分。 软件重用有不同的层次,包括代码级重用、功能级重用和系统级重用。其 中对领域知识和设计决策的重用比功能级的重用更有意义。软件框架技术基于一 个特定的领域,它刻画该领域软件系统的公共属性、公共的商业规则、公共的设 计决策。 在设计这个领域新的软件系统的时候,可以基于软件框架包含的重要信息, 设计该软件系统特殊的属性,然后有效的把两者集成为一个完整的应用系统。通 过这种软件开发方式,可以大大加快软件开发的速度。 研究生论文多层分布式信息系统框架的研究 2 3 框架设计的一般过程 框架设计的一个核心问题就是发现可重用的设计和“热点”,以保证框架具 备充分的灵活性,使用户能在已有构件的基础上生成应用程序,实现“零代码编 写”的理想目标。 许多专家甚至认为框架不可能是系统设计的结果,而只是在从底向上设计 中的一个结果。实践法也可以说是实例( e x a m p l e ) 驱动的设计方法,它是从若干个 具体的典型应用中,抽象出相似点来构建框架,框架反过来又应用于不同的问题, 并在解决不同问题的过程中得到更新,在框架的设计和实现的两步中,不断反复。 等到框架逐渐成熟时,需要修改和反复的内容就会越来越少。 具体步骤为如下图所示: 图2 1 框架设计步骤图 1 7 - 研究生论文多层分布式信息系统枢架的研究 分析问题领域,确定所需框架。 从一类应用而不是单个的程序去分析、比较各种不同的软件解决方案,寻 求这些方案的共性和每个程序的唯一性特征。这些共性,尤其是那些经常被多个 程序使用的部分将成为框架的基础。然后定义框架体系结构并设计,包括设计用 户与框架间的交互、给用户提供的最终工具等。 框架的实现。 包括框架核心类的实现、框架的测试、框架的试运行、框架的反复更新。 框架的部署。 包括文档的提供、分发过程,为用户提供技术支持,维护和更新框架。 上述方法就是先在具体类基础上进行泛化,然后提取出抽象类。抽象化也 是框架开发的一个关键。不过,根据这种方法设计出的框架的可适用性很大程度 上依赖于其基于的具体应用。 由于框架的开发具有反复性,且需要深入了解应用领域,因此框架的开发 很难按进度表进行【1 8 】。框架的设计者也需要和应用开发者紧密合作,因为框架 只有在使用它开发应用的过程中才能发现其哪些部分有待改进。 框架的设计是一个反复的过程,在这个过程中需要领域和设计两方面的专 家意见,框架用户和框架开发者之间的交流对框架的设计也很重要,因为框架是 在不断反复的过程中逐步成熟的。 - 1 8 _ 研究生论文多层分布式信息系统框架的研究 2 4 软件框架的发展现状和方向 随着软件系统的日益复杂,面向对象应用程序框架变得越来越普遍和重要。 相当多领域中的开发人员已经成功开发了他们各自领域的系统框架。早期的面向 对象框架( 如m a p p 和i n t e r v i c w s ) 起源于图形用户界面( g 町l s ) 领域,现在 微软基础类库( m f c ) 已经成功当代p c 平台上开发g u i s 框架中的事实标准。 它的广泛应用标志着框架在图形用户界面领域的成功。 基于框架的开发方式的发展趋势在于: 更多的集中于特定的企业领域,多年来许多关键的企业领域,例如银行、 电信、卫生系统开发企业领域的框架已经积累不少经验,将这些经验应用到一个 急剧增长的领域范围,开发出更多的企业应用程序。 框架记录,对框架描述将会使用更加高级的方法例如引入设计模式目录和 员模式等。 框架集成,随着应用程序功能的不断增强,程序越来越依赖框架和类库与 已知组件以及多个框架之间的集成来满足程序的需求。 研究生论文多层分布式信息系统框架的研究 第3 章基于p o w e r b u i ld e r 的三层分布式系统开发 利用s y b a s e 的p 0 w e f b u 埘e r 9 0 和e a s e r 、r e r ,我们能方便地开发出基于三层 模式的应用。本章简单的介绍p o w e r b u i l d c r 9 0 开发_ i 具的特点和p o w e r b u i l d e r 9 o 结合企业服务器e a s c e r 开发三层式分布系统的作用。优势。 3 1p o w e r b u i l d e r 软件的介绍 在本文的开发软件实例介绍中,使用的p o w e r b u 豇d e r 版本均是9 0 。在这一 章中,本文首先对p 0 w e r b u 删c r 9 0 做简单介绍。p o w r c r b u 埘e r9 o 始终在各种新 一代开发环境中处于领先地位:“4 g 功l u s ”。4 g l p l u s 将成为一个丰富且高产的 解决方案,适用于应用程序开发环境的整个生命周期。p 0 w c r b u i i d c f9 o 率先推 出的4 g 坤j i i s 提供了多种全新的开发功能和集成特性,适用于: pj 2 e e m i c r o s o f t 。n e t 客户端服务器 w 曲服务器 语言集成 设计,建模同步 n 层结构 版本控制 脚本 所有这些功能综合起来,为开发人员提供了前所未有的灵活性,能够帮助 他们将正确的架构和开发模式应用到正确的应用程序中。p 0 w r c r b u n d e r 允许您快 速创建并配置持久的企业级或者商务级应用程序,通过增长收入、提高用户效率、 增强客户服务以及更紧密的与伙伴合作来改变现有业务模式l 引。 2 0 - 研究生论文多层分布式信息系统框架的研究 3 2p o 胃e r b u i1d e r 结合e a s e r v e r 建立三层架构的优势 p o w c r b u i l d e r 是在c 搐应用中被普遍使用的开发工具,是公认的高效率的图 形化4 g l 工具。e a s e f v c r 是集动态页面发布和事务处理于一身的企业级应用服 务器。这二者的结合可以构成多层应用的开发和提交环境,开发人员可以不离开 这个集成的开发环境进行应用的开发、调试、提交和运行。 b 峪e f v e f 中包括动态页面服务器p 0 w e r d y l l a m o 和组件事务服务器j a g u a r c t s ,这两者的结合使e a s e r v c r 成为发布动态网页和处理电子商务的应用服务 器,支持多种组件类型,如c o m 、c o r b a 、j a v a b e a r i 勘b 和p o w c f p u i l d e r 。它 的一个更加显著的特点是支持x m l 和j 2 e e 。 p o w c r b u n d e t 和e 蝎e r v 盯的结合能使企业在以下方面获得成功【2 1 1 : 从客户朋艮务器升级到分布应用 开发、b 和i n t e m e t 的电子商务应用 支持建造企业门户的基础 也峪e r v e f 是s y b 髂e 公司提供的企业级应用服务器,可以在它上面部署封装 企业业务逻辑的组件;e a s e r v e r 提供了高效、安全、支持线程、实例缓冲、事务 处理和集群技术等功能的执行环境。它支持用p b 、j a v a 、c 等多种语言编写的 组件。用统一的接口封装它们以使其能被多种语言编写的客户端调用。 在所有这些语言中,p b 与e a s e r v c r 是紧密集成的,p b 中自带的多种向导 工具使p b 开发和部署基于e a s e r v e r 的组件变得非常简单易行。这样,我们就可 以在充分享有p b 开发数据库应用灵活快捷的优势上,将其拓展到开发基于分布 式组件模型的多层应用上来,使之更加适应当前企业信息系统不断发展的需要。 研究生论文多层分布式信息系统框架的研究 3 3p o - e r b u i l d e r 在分布式系统实现的内容 在p o w e r 】b u 丑d e r 中,应用服务器一端的功能都是通过不可视用户对象实现 的,开发人员可以将p 0 w e 慨n d e r 的自定义用户的对象放于应用服务器一侧,被 称作远端对象,在客户端放置该用户对象的代理对象。此外,在服务器一侧有一 个新的t f a 璐p o n 对象用于监听任何一个用户或其它应用服务器的请求,在客户端 有一个c o n n e c t i o n 对象用以建立同远端对象的连接。客户端的应用程序通过 c o n c t i o n 对象连接应用服务器,连接建立后,客户端的应用就可以像调用本 地对象一样调用应用服务器上的对象函数了。 服务器应用 p o w e r b u i l d c f 服务器应用包括了不可视的用户对象,并被客户端应用调用, 这些用户对象被称作远过程对象这种调用可以是跨进程或跨硬件平台的分布式 p o w e r b u i l d 盯在服务器端有一个p o w e r 程序代码对象t r 娜p o n 来监昕客户端 对过程调用的需求,而这个服务器端的应用也可以同一般传统的客户机服务器 应用的客户端或远程的客户端应用一样来调用另外的p o w c r b u i l 如r 服务器应 用。其主要有两个组件【5 】= 1 远程对象 与其他的不可视用户对象类同。一个远程对象包含了用p o w c r 程序代码编 写的商业逻辑放在服务器端,作为不可视用户对象的特例,远程对象可以引用各 种不可视的函数和数据库的指令,如使用d a t a i i l d o w 的不可视形式d a t a s t o ”来 实现对数据库访问的封装等。远程对象像是一个过程或函数的调用,并支持参数 传递和返回结果,支持除对象数据类型以外的其他所有类型。 2 传输对象 是服务器端用以接收客户请求的特殊连接对象。当使用c 咒a t c tr 蛐s p o n 命 令创建一个传输实例后,该对象以对象的属性中所定义的协议监听接收客户的请 求。这个对象的属性包括通讯驱动名称、通讯协议类型、超时协议等,得到和设 研究生论文多层分布式信息系统框架的研究 定这些属性的方法同p o w e r b u 蹦e f 的其他对象如t 眦s a c i o n 等一样。 客户端应用 p 0 w r c r b u i l d e r 客户应用是用以调用远端对象的部分,分布式p o w e r b u 谢e f 应用包括了一个新的对象,称作c 0 曲c c t i o n ,用以连接p o w e r b u i l d c r 服务器。当 与服务器建立连接后,客户应用将像调用本地的不可视用户对象一样调用远程对 象。其主要的两个组件: 1 连接对象 是客户端发送请求的客户端的对象。当使用c r e a t c tf a 船p o n 创建一个连接 对象时,本对象的c 0 曲e c tt 0 s e c r 函数执行同服务器的连接。通讯方式如通讯 名称、协议等由连接对象的属性来决定。 2 对象存储代理 一种存储用户对象的新选择。存储代理保存对象的远程名称并生成内部代 码以供远程调用。当c 0 姗e d i o n 对象与之建立连接后,该对象就能够用以远程调 用。 小结 本章简单的介绍s y b a s e 公司提供4 g l 开发工具p o w c r b u i l d c r 9 0 的特点和 p o w e r b u 硼e r 9 o 结合企业服务器e a s c r v e r 开发三层式分布系统的作用,优势, 以及p o w c r b u 谢e r 9 0 在整个系统实现过程中所扮演的角色和完成的工作。 研究生论文多层分布式信息系统框架的研究 第4 章三层分布式系统框架总体结构与设计 在前面的三章中详细阐述了应用服务器e a s e r v e r 的特点,框架设计的概念、 意义、开发方法,以及p o w c f b u i l d e r 在分布式系统中的使用方法。可以说前几章 说叙述的内容是系统框架实现的基本条件,在本章中,将讨论三层分布式系统的 总体设计和实现方法,重点分析了系统框架的总体的结构和设计以及实现注意事 项。 4 1 三层分布式系统框架分类 如何从数据中提取信息,从信息中提取知识已成为一个重要的应用领域。 越来越多的知识处理应用系统急待开发,若能有一个成熟可靠的知识处理框架系 统,将大大加快此类应用系统的开发1 7 】o 一般情况开发者将应用框架结构化为框架的框架,划分为如下三个子框架 领域专用构件框架 提供领域专用的构件模型集合,并为分层的构件模型提供统接口。 可视化组装框架 提供整个框架系统的图形化界面,并为可视化组装和操作构件提供工具。 连接框架 为构件间的交互、通信提供机制。 2 4 研究生论文多层分布式信息系统框架的研究 图4 1 框架设结构图 对于三层分布式系统来说,其中最重要的包括人机交互,客户端与服务器 通讯,服务器与数据库通讯,以及信息系统必要的一些软构件。 应用框架强调的是软件的设计重用性和系统的可扩充性,以缩短大型应用软 件系统的开发周期,提高开发质量。与传统的基于类库的面向对象重用技术比较, 应用框架更注重于面向专业领域的软件重用。应用框架具有领域相关性,构件根 据框架进行复合而生成可运行的系统。框架的粒度越大,其中包含的领域知识就 更加完整【1 0 】。 在软件写作中注意保持软件框架的柔韧是非常重要的,好的框架能够让你 在软件维护的过程中节省大量的时间和精力。 框架设计时候,应该尽量保持几个方面特点: 1 、低耦合,高内聚。 2 、开放、可扩展。 3 、针对需求变化修改的难易度 - 2 5 - 研究生论文多层分布式信息系统框架的研究 4 2 三层分布式系统框架总体设计 框架设计总体结构如下图所示: 图4 2 框架总体结构图 三层分布式系统框架分成三个重要部分:服务器端、客户端以及数据库。 服务器端包括提供给客户端访问数据库所需组件,以隔开客户端直接对 数据库数据的操作,以及提供某些领域专业的业务组件。 客户端主要包括用户接口,完成客户端的界面、动作以及响应等。 数据库则可以根据不同要求选择市场上不同的数据库系统,例如 o r a c l c ,s q ls e “e r 2 0 0 0 ,d b 2 等。 下li上til上 研究生论文多层分布式信息系统框架的研究 4 3 客户端的设计 上一节所提到的三层分布式系统框架整体结构以及框架设计的注意点。本 小节将讨论客户端的设计。客户端直接和客户交互,与数据是分离的那部分。客 户端把用户的操作转化成一些对业务层接口函数的调用,当业务层返回结果后, 把结果展现给用户。因此,客户机上的应用程序往往比较简单,对机器的资源要 求以比较低,只要客户机能够访问中间业务层即可。 4 3 1 客户端对象分类 存取队s e f v e r 服务器的p o w e r b u 黝c r 客户端中主要有三种对象1 1 5 】: 用户接口( 界面) c o 皿c c t i o n 连接对象 e a s e r v e r 代理对象 三层式结构客户端结构一 溪黥霜b 拿、 图牛3 三层式客户端结构图 其中三种对象及其具体作用如下: 1 用户接口 e a s e r v e r 指客户应用程序上包括所有与业务用户进行交互的窗口和菜单,以及客户 应用程序中包含的响应用户的每个动作的程序。用户动作可以是单击命令按钮, 研究生论文多层分布式信息系统框架的研究 或是选择了菜单项,或是在编辑栏中输入了数据等,而相应的程序则完成了相对 应的工作。 2 c o n m c t i o n 连接对象: 负责与e a s e r v e r 的连接并要求它的服务。c o 蛐c c 渤n 对象应该在客户端的 程序实例化,它的属性包括了p 0 w c r b u i l d e r 客户与e a s e n 他r 服务器连接所需要 的信息。0 0 衄e c t i o n 对象要验证e a s e r v c r 的主机名和端口号,并选择默认的包。 3 e a s e r v c r 代理对象 e a s e r v c r 服务器中每个组件在客户应用程序中都有一个与之对应的代理对 象。在运行期间,代理对象所代理的远程对象可以在本地实例化,只有建立了远 程对象的实例,才能对远程对象的函数进行调用。 所以,我们在进行e a s e r v e r 客户端的设计的时候必须协调好三种对象的关 系,其中的重点的是用户接口,它完成了客户端的界面、动作以及响应等,而 ( b 衄e c t j o n 连接对象,e a s e c r 代理对象则主要负责与e a s e r v 盱服务器连接、 代理等工作。 4 3 2 客户端设计流程 在基于e a s e r v e r 的三层分布式体系中,客户端的设计流程主要包括以下几: 1 连接j a g u a r 服务器成功连接后,创建业务组件的本地代理,通过本地 代理,调用组件的一个函数,例如o _ r c t r 语v c 0 函数,则可获得以b l o b 形式返回的结果。 2 数据窗口控件调用s e t f u l l s t a t e ( b l o b ) 方法,设置自身数据窗口的所有 状态信息以及数据,此时,用户就可以对数据进行增加、删除、修改等 操作; 3 当用户编辑完成后进行提交时,数据窗口控件首先调用g e t f u s t a l e ( b 1 0 b ) 方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025安徽池州市妇女儿童医院(池州市妇幼保健院)招聘编外工作人员17人笔试模拟试题及答案解析
- 2025年肿瘤内科化疗药物配伍测验模拟考试卷答案及解析
- 2025年放射科学中CT影像诊断的原理模拟筛查卷答案及解析
- 2026中国华能财务有限责任公司校园招聘笔试模拟试题及答案解析
- 2025广东肇庆市怀集县幸福街道招聘街道办派驻村(居)党群服务中心工作人员1人笔试备考试题及答案解析
- 2025年芜湖市中西医结合医院(湾沚区总医院)招聘药师1人(二次)笔试参考题库附答案解析
- 2025四川成都“蓉漂人才荟”都江堰市卫生健康局下属事业单位赴外考核招聘工作人员44人笔试备考题库及答案解析
- 2025年内科学临床诊断考核模拟试卷答案及解析
- 白山市中石化2025秋招面试半结构化模拟题及答案安全环保与HSE岗
- 齐齐哈尔市中石化2025秋招笔试模拟题含答案炼油工艺技术岗
- 车间行车梁安装合同协议
- 工厂合同管理制度
- 血液透析患者自我管理与健康教育
- 医疗决策遗嘱书写范文
- 2025年中央一号文件高频重点考试题库150题(含答案解析)
- 交通事故责任认定书复议申请书
- DB33-T 628.1-2021《交通建设工程工程量清单计价规范 第1部分:公路工程》
- 绳锯切割施工方案
- 职工基本医疗保险参保登记表
- 绿色物流仓储绿色发展模式研究
- 《参红通络方对不稳定性心绞痛生化指标影响的临床研究》
评论
0/150
提交评论