




已阅读5页,还剩46页未读, 继续免费阅读
(控制理论与控制工程专业论文)基于web的信息管理系统的应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西安理工文学硕士学位论文 摘要 本文主要研究在分布式网络条件下客户机,服务器两层模式和浏览器月 务器三层模式在w e b 系统中的应用,并在此基础上探讨了基于w e b 的信 息管理系统的应用和实现方法。本文提出了一种新的开发方式,即将两层客 户机服务器模式和三层浏览器服务器模式结合起来,从而提高了基于w e b 的信息管理系统的安全性,并增强了系统的可靠性和灵活性。在论文中作者 使用此种方式和方法设计开发了西安理工大学自动化与信息学院的主页和 基于w e b 的信息管理系统。 关键字:分布式网络应用,客户机服务器模式,浏览器服务器模式,w e b a s p ,d c o m a b s t r a c t t h i st h e s i si sm a i n l yc o n c e m c dw i t ha p p i i c a t i o n so ft w o i a y e rm o d eo f c e n t s e r v e ra n dt h r e e l a y e ro n eo fb r o w s e r ,s e r v e ti nw e bs y s t e m so nc o n d i “o n o fd i s t r i b u t e dn e t w o r k a p p l i c a t i o n sa n dr e a l i z a t i o nm e t h o d so fm i sb a s e do n w e ba r ea l s od l s c u s s e di nt h et h e s i san e w d e v e 】o p m c n tm o d ei sf o r m u l a t e dt o c o m b i n et h e t w 。- 】a y e r c e n i s e r v e rm o d e t o g e t h e r w i t ht h e t h r e e l a y e r b r o w s e t s e r v e rm o d e ,w h i c hn o to n l yr e i n f o r c e st h es a f e t yo fc h em i sb a s e do n w e bb u ta ls oi m p r o v e st h er e l i a b i l i t ya n df l e x i b i l i t yo ft h es y s t e mb ym e a n so f t h i sm e t h o d t h ew e b s i t ea n dt h em i sf ort h es c h o o lo fa u t o m a t i o na n d i n f o m a t i o ne n g i n 蛳i n gi n x i a nu n i v e r s i t yc ,ft e c h n o l o g yi s d e v e 】o p e da n d h a sb e e ns u c c e s s f u u yp u ti n t oo p e r a t i o n k e y w o r d s : d i s t r i b u t e d n e t w o r k , c l i e n t s e r v e rm o d e b r o w s e r s e r v e rm o d e ,w e b a s p d c o m 第一章绪论 第一章绪论 i n t e r n e t 在最近几年飞速发展,已使得它的触角伸到了世界各地。据统计, 到二十世纪末全世界已有2 4 0 多个国家和地区正式加入i m e m e t ,连接网络已达8 0 万个,其主机数己超过5 千万,全世界通过i m e m e t 使用电子邮件( em a i l ) 的国家和 地区己达2 4 0 多个,约有近2 6 亿网络用户通过i n t e m e t 进行信息交换和业务活动。 可以说i n t e r n e t 现在已实现了全球的资源和信息共享,它本身已变成了一个空前 的信息源。在这个信息源之上的i n t e r n e t 基本服务e - m a i l 、f t p 、g o p h e r 、 t e l n e t 刚为世人所熟知不久,w w w ( w o r dw i d ew 曲万维网简称w e b ) 作为 i n t e r n e t 上的新成员从1 9 9 4 年问世以来就因其高效性和功能强吸引了越来越多 的用户。w w w 实际上是基于t e r n e t 的一个超文本信息和通讯系统,它以客户 机服务器模式进行通讯,采用超文本和多媒体技术,将不同文件通过关键字 建立链接,提供一种交叉式的查询方式,在一个超文本的文件中一个关键字链接着 另一个与该关键字有关的文件,该文件可为本地文件也可为远程主机上的文件,并 且该文件可以为另一超文本文件。超文本文件可把不同类型的文件,如文本、声音、 图形、图像等文件连接起来。用户使用浏览器作为w w w 的客户端可以使用多种协 议访问多媒体信息,服务器能根据用户的请求组织和传输信息。w w w 是一个分布 式的信息系统,它整合了f t p 、g o p h e r 、n ! l n e t 、n n t p 及本身的h t t p 等主要 的网络协议。目前,w w w 正在深入到社会的各个角落,用户通过在线注册、在线 查询、网上购物、电子交易、电子商务等得到了实实在在的服务,w w w 与信息管 理系统( m i s ) 的集成又为i n t 凡e t ( 企业内部网) 的商务决策的科学化提供了基 础。 随着i n t e i 矾e t ,i n t r a n e t 的产生和发展,计算机网络应用也经历了早期的 以主机为中心的计算模式、后来的文件服务器的计算模式到现在的客户机服务器 ( c l i e n t s e r v e r ) 分布式计算模式以及目前非常流行的浏览器服务器 ( b r o w s e r s e r v e r ) 计算和分布式多层应用模式。 本课题就是借助于自裂化与信息学院的州1 e r n e t ,i n t r a n e t 建设和学院基 于w e b 的信息管理系统的实现,研究客户机服务器两层模式和浏览器朋务器三层 西安理工大学硕士学位论文 模式在w e b 系统中的应用,探讨基于w e b 的信息管理系统的应用和实现方法。并 提出了一种新的开发方式,即将两层客户机朋日务器模式和三层浏览器朋日务器模式结 合起来,从而提高了基于w e b 的信息管理系统的安全性,并增强了系统的可靠性 和灵活性。 本文第二章内容是分布式网络应用。文中首先简单介绍了分布式网络应用和与 其相关的一些的基本概念,然后阐述了分布式网络应用的应用类型和开发技术、体 系结构,并说明了w e b 作为分布式网络应用平台的特点,最后介绍了基于w e b 的 应用开发技术。 本文第三章的内容是数据库设计。文中开始介绍了目前数据库的一些主要产品 及它们的各自特点,其次探讨了目前流行的一些数据库访问技术。然后进行了数据 库的业务需求分析并介绍了数据库的设计方法和现今流行的一些设计工具,最后介 绍本课题数据库中的主要对象及其意义。 本文第四章介绍了自动化与信息学院基于w e b 的信息管理系统的开发。文 中首先简单论述了自动化与信息学院基于w e b 的信息管理系统所采用技术和方法。 然后介绍了该信息管理系统的几大模块。接着讨论管理系统所遇到的安全问题极其 解决方法。最后介绍了系统可扩充模块和与学校校级系统的接口。 本文第五章是结论部分。 蒸三至金查蠡圈垫廑盟 第二章分布式网络应用 2 1 分布式概念 随着计算机网络技术的广泛应用和信息社会的发展,许多大型机构和企业 都面临着一个严重问题:这就是它们必须找到一种方法将它们分散的、异构的计算 环境( 例如基于w i n d o w s 的局域网、u n i x 工作站和服务器以及传统的大型机) 结合 到一起工作。然而,最终用户发现,虽然他们能够采用一些实用技术,但要实现企 业范围的互操作性这样一个巨大的工程,仅靠几种实用技术是不够的,这样,这个 非常复杂的问题一直到分布式计算环境出现后才得到了解决。 分布式环境能提供一个企业范围的结构来将整个机构的计算能力大型机、 工作组和局域网连成一个巨大的异构环境,实现并达到企业范围的互操作性。这种 分布式计算环境实际是从客户机服务器体系结构中发展起来的。通常客户机朋艮务器 计算只在服务器和它们自己的客户机之间提供信息和服务,而分布式计算则扩展了 服务的共享范围,使得不仅服务器与其它服务器进行了共享,而且它的客户机也能 与其它的服务器进行共享,这样数据就不必像在客户机服务器方案中那样集中存 放,而是可以分散到许多服务器中,这些服务器可以在地理上相分隔,然后通过广 域网连接起来。 2 2 网络应用类型 2 2 1 网络计算的发展和客户机,服务器计算模式 网络计算主要经历了从基于宿主机的计算模型到客户机服务器计算模型的演 变。在集中式计算技术时代,广泛使用的大型机j 、型机计算模型是通过一台物理上 与宿主机相连接的非智能终端来是实现宿主机上的应用程序。在多用户环境中,宿 主机应用程序既负责与用户的交互,又负责对数据的管理;宿主机上的应用程序一 般也分为与用户交互的前端和管理数据的后端,即数据库管理系统( d b m s ) 。集中 式的系统使用户能共享贵重的硬件设备,如磁盘机、打印机和调制解调器等。但随 着用户的增多,对宿主机能力的要求越来越高,并且开发者必须为每个新的应用重 新设计同样的数据管理部件。 8 0 年代以后,集中式结构逐渐被以p c 为主的微机网络所取代。个人计算机和 工作站的采用,永远改变了以前的协作计算摸型,从而导致了分散的个人计算模型 的产生。这主要是由于:一方面,由于大型机系统固有的缺陷,如缺乏灵活性,无 法适应信息量急剧增长的需求来为整个企业提供全面的解决方案等;另一方面,由 于微处理器的日新月异,其强大的处理能力和低廉的价格使微机网络迅速发展,这 样用户可以在p c 应用程序丰富并且易于开发的环境里选择适合自己需要的工作站、 操作系统和开发应用程序。 这种网络文件服务器计算模型的产生用以解决个人p c 和工作站的数据和外部 设备共享问题。在一个局域网中共享数据,需要将文件存放在文件服务器上,所有 用户都通过这个存储数据文件的中央节点访问数据文件。这个节点也是局域网 f l a n ) 中共享外部设备的中枢。但网络文件服务器计算模型的内在设计,使得它无 法像大型机那样对多用户请求、共享数据的应用提供足够充分的服务。网络文件服 务器计算模型也不提供多用户应用要求的数据并发性当某一用户封锁一个文件便 阻止了其它用户共享该文件;如果l a n 中i :多工作站请求和发送很多文件,网络很 西安理工大学硕士学位论文 快就达到信息传送的饱和状态,造成瓶颈,降低整个网络的性能。 以p c 机为主体的文件服务器并不能满足分布式计算的需求,而客户机朋日务器 技术正是这种分布式计算模式,它集中了大中型系统及文件服务器的优点,并有良 好的系统开放性和可扩展性。客户机服务器计算模式定义了台式机如何和服务器相 连,以实现数据和应用的共享,并利用台式机的处理能力将数据和应用分布到多个 处理机上。客户机朋务器系统有三个主要部件:数据库服务器、客户应用程序和网络。 服务器负责有效地管理系统的资源,其任务集中于: 数据库安全性的要求 数据库访问并发性的控制 数据库前端的客户应用程序的全局数据完整性规则 数据库的备份与恢复 客户端应用程序的的主要任务是: 提供用户与数据库交互的界面 向数据库服务器提交用户请求并接收来自数据库服务器的信息 。利用客户应用程序对存在于客户端的数据执行应用逻辑要求 网络通信软件的主要作用是,完成数据库服务器和客户应用程序之间的数据传 输。 这种传统的客户机朋务器计算模型比文件服务器系统能提供更高的性能,这是 因为客户端和服务器端将应用的处理要求分开,同时又共同承担其处理要求和任务, 对客户端程序的请求实现”分布式应用处理”。这里服务器为多个客户端应用程序管 理数据,而客户端程序发送、请求和分析从服务器接收的数掘,这是一种”胖客户机 ( f a tc l i e n t ) ”,”瘦服务器( t h i ns e r v e r ) “的网络计算模式。 在一个这样客户机服务器应用中,客户端应用程序是针对一个小的、特定的数 据集,如一个表的行来进行操作的,而不是像文件服务器那样针对整个文件进行 操作,或是对某一条记录进行封锁,而不是对整个文件进行封锁,因此保证了系统 的并发性,并使网络上传输的数据量减到最少,从而改善了系统的性能。客户机朋日 务器模型的优点主要在于系统的客户端应用程序和服务器部件分别运行在不同的计 算机上,系统中每台服务器都可以适合各部件的要求,这对于硬件和软件的变化显 示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。在客户机服务器模 型中,系统中的功能部件充分隔离,客户端用程序的开发集中于数据的显示和分析, 而数据库服务器的开发则集中于数据的管理,不必在每一个新的应用开发中都要对 一个数据库进行编码。这样将大的应用处理任务分布到许多通用网络连接的低成本 计算机上导致了费用的极大节约。 随着信息的全球化,区域的界限已经被打破,电子商务作为i n t e m e t 的强大的驱 动力,迫使客户机服务器模式从局域网( l a n ) 向广域网( w a n ) 延伸。如今, i n t e m e t 已经成为全球最大的网络互联环境,在i n t e n e t 的环境下实现数据的多层浏 览器服务器计算模型正是目前的流行趋势。在这种条件下产生的网络计算模式实际 上是对传统的客户机朋务器计算模式的扩充,用公式表示为: 网络计算模式= 多层客户机月务器+ 动态计算 2 2 2 两层与三层c l i e n t s e r v e r ( 客户机,服务器) 计算模式结构的区别 应用程序从结构上一般分为四层:形式逻辑、业务逻辑、数据逻辑和数据存储。 传统的c l i e n t s e r v e r 计算多是基于两级模式,在这种模式中,所有的形式逻辑 和业务逻辑均驻留在c 】i e n c 端,而s e r v e r 则成为故据库服务器,负责各种数据的处 签三至盆查氢圈堡座旦 理和维护。因此s e r v e r 变得很”瘦”,被称为”t h i ns e r v e rf 瘦服务器九与之相反, 这种模式需要在客户端运行庞大的应用程序,这就是所谓的”f a tc l i e n tf 胖客户机九 用公式表示为: 两层网络计算模式= 多c 1 i e n t + 单多d a t a b a s es e r v e r + 动态计算 随着c l i e n t s e r v e r 结构应用范围的不断扩大和计算机网络技术的发展,这 种结构带来的问题日益明显,主要表现在以下几方面: 首先,系统的可靠性有所降低。一个客户机朋& 务器系统是由各自独立开发、制 造和管理的各种硬件和软件的混合体,其内在的可靠性不如单一的、中央管理的大 型机或小型机,出现问题时,很难立即获得技术支持和帮助。 其次,维护费用较高。尽管这种应用模式在某种程度上提高了生产效率,由于 客户端需要安装庞大而复杂的应用程序,当网络用户的规模达到一定的数量之后, 系统的维护量急剧增加,因而维护应用系统变得十分困难。 第三,系统资源的浪费。随着客户端的规模越来越大,对客户机资源的要求也 越来越高。尽管硬件不断更新,但新的操作系统和新的应用软件的不断出现,使得 用户对硬件的更新仍然跟不上软件更新的速度。客户不得不在本地硬盘上装入大量 的软件,但是使用的大都只是其中很少一部分( 一般低于l o ) 。在一个拥有众多的” 胖客户机”的环境中,这无疑又是一种巨大的浪费。 最后,系统缺乏灵活性。客户机朋务器需要对每一应用独立地开发应用程序, 消耗了大量的资源,但胖客户机的计算模式却仍然满足不了日益增长的应用的需要。 在向广域网扩充( 如i n t e m e t ) 的过程中,由于信息量的迅速增大,专用的客户端 已经无法满足多功能的需求。网络计算模式从两层模式扩展到三层模式、n 层模式, 并且结合动态计算,解决了这一问题。 目前流行的三层网络计算模式,用公式表示为: 三层网络计算模式= 多浏览器+ 单w 曲服务器一多数据库服务器+ 动态计 算 在三层模式中,w e b 服务器既作为一个浏览服务器,又作为个应用服务器, 在这个中间服务器中,可以将整个应用逻辑驻留其上,而只有表示层存在于客户机 上。这种结构被称之为”m i nc i i e n t ( 瘦客户机) ”。这种结构中,无论是应用的h t m l 页还是j a v aa p p l e t 都是运行时刻动态下载的,只需随机地增加中间层的服务( 应用 服务器) ,即可满足扩充系统的需要。由此我们可以用较少的资源建立起具有很强伸 缩性的系统,这正是网络计算模式带来的重大改进。三层c l i e n t s e r v e r 模式的 数据流图如图2 1 所示。 表示层 d 惶f 。匕= 二二 i 国i = = = = cc 删 中间层 图:1 基于w e b 应用的三层式结构 数据层 2 2 3 三层c l i e n t ,s e r v e r 结构的实现 三层c l i e n t s e r v e r 结构是将应用功能分成表示层、功能层和数据层三部分。 其解决方案是:对这三层进行明确分割,并在逻辑上使其独立。原来的数据层作为 d b m s 已经独立出来所以关键是要将表示层和功能层分离成各自独立的程序,并 西安理工大学硕士学位论文 且还要使这两层间的接口简洁明了。一般情况是只将表示层配置在客户机中,如果 连功能层也放在客户机中,与二层c l i e n t s e r v e r 结构相比,其程序的可维护性 要好得多,但是其他问题并未得到解决。客户机的负荷太重,其业务处理所需的数 据要从服务器传给客户机,所以系统的性能容易变坏。 如果将功能层和数据层分别放在不同的服务器中,则服务器和服务器之间也要 进行数据传送。但是,由于在这种形态中三层是分别放在各自不同的硬件系统上的, 所以灵活性很高,能够适应客户机数目的增加和处理负荷的变动。例如,在追加新 业务处理时,可以相应增加装载功能层的服务器。因此,系统规模越大这种形态的 优点就越显著。 值得注意的是:三层c l i e n t s e r v e r 结构各层间的通信效率若不高,即使分配 给各层的硬件能力很强,其作为整体来说也达不到所要求的性能。此外,设计时必 须慎重考虑三层间的通信方法、通信频度及数据量。这和提高各层的独立性一样是 三层c l i e n t s e r v e r 结构的关键问题。 在三层c l i e n t s e r v e r 中,表示层是应用的用户接口部分,它担负着用户与 应用问的对话功能。它用于检查用户从键盘等输入的数据,显示应用输出的数据。 为使用户能直观地进行操作,一般要使用图形用户接口( g u i ) ,操作简单、易学易 用。在变更用户接口时,只需改写显示控制和数据检查程序,而不影响其他两层。 检查的内容也只限于数据的形式和值的范围,不包括有关业务本身的处理逻辑。 功能层相当于应用的本体,它是将具体的业务处理逻辑地编入程序中。表示层 和功能层之间的数据交往要尽可能简洁。 数据层就是d b m s ,负责管理对数据库数据的读写。d b m s 必须能迅速执行大 量数据的更新和检索。现在的主流是关系数据库管理系统f r d b m s ) 。因此一般从 功能层传送到数据层的要求大都使用s 0 l 语言。 在三层或n 层c l i e n t s e r v e r 结构中,中间件( m i d d l e w a r e l 是最重要的部 件。所谓中间件是一个用a p i 定义的软件层,是具有强大通信能力和良好可扩展性 的分布式软件管理框架。它的功能是在客户机和服务器或者服务器和服务器之间传 送数据,实现客户机群和服务器群之间的通信。其工作流程是:在客户机里的应用程 序需要驻留网络上某个服务器的数据或服务时,搜索此数据的c l i e n t s e r v e r 应 用程序需访问中间件系统。该系统将查找数据源或服务,并在发送应用程序请求后 重新打包响应,将其传送回应用程序。随着网络计算模式的发展,中间件日益成为 软件领域的新的热点。中间件在整个分布式系统中起数据总线的作用,各种异构系 统通过中间件有机地结合成一个整体。每个c l i e n t s e r v e r 环境,从最小的l a n 环境到超级网络环境,都使用某种形式的中间件。无论客户机何时给服务器发送请 求,也无论它何时应用存取数据库文件,都有某种形式的中间件传递 c l i e n t s e r v e r 链路,用以消除通信协议、数据库查询语言、应用逻辑与操作系 统之间潜在的不兼容问题。 所以,和两层c l i e n t s e r v e r 结构相比,三层c l i e n t s e r v e r 结构具有更 灵活的硬件系统构成,对于各个层可以选择与其处理负荷和处理特性相适应的硬件。 合理地分割三层结构并使其独立,可以使系统的结构变得简单清晰,这样就提高了 程序的可维护性。三层c l i e n t ,s e r v e r 结构中,应用的各层可以并行开发,各层 也可以选择各自最适合的开发语言,有利于变更和维护应用技术规范。按层分割功 能使各个程序的处理逻辑变得十分简单。一般而言,三层c l i e n t s e r v e r 结构的 优势主要表现在以下几个方面: 利用单一的访问点,可以在任何地方访问站点的数据库; 对于各种信息源不论是文本还是图形都采用相同的界面; 篷三重盆查蠡旦垒星墨 所有的信息,不论其基于的平台,都可以用相同的界面访问 可跨平台操作; 减少整个系统的成本: 维护升级十分方便; 具有良好的开放性; 系统的可扩充性良好; 进行严密的安全管理; 系统管理简单,可支持异种数据库,有很高的可用性。 2 3 开发技术和体系结构 一直以来,面向对象的技术( 0 b i e c to r i e m a t i o n ,o o ) 是软件界努力追求的目标, 传统的对象技术通过封装、继承及多态提供了良好的代码重用功能。但是这些对象 只存在于一个程序中,外面的世界并不知道它们的存在,也无法访问它们。要解决 这些问题就需要提供一个标准的构件框架,使不同厂家的软件通过不同的地址空间、 网络和操作系统交互访问。该构件的具体实现、位置及所依附的操作系统对客户来 说都是透明的。因此有关对象中间件的标准相继问世,像o m g 组织( o b j e c t m a l l a g e m e n tg r o u p ) 的公用对象请求代理程序结构( c o m m o no b j e c tr e q u e s tb r o k e r a r c h i t e c t u r e ,c o r b a ) 、m i c r o s o f t 的构件对象模型( c o m p o n e to b j e c tm o d e l ,c o m ) 以及i b m 公司的系统对象模型( s y s t e mo b j e c tm o d e l ,s o m ) 等,这些标准都极大地 促进了对象中间件技术的发展。 2 3 1c o r b a f 公用对象请求代理程序结构) 1c o r b a 概要描述 c o r b a 是o m g 组织在1 9 9 1 年提出的公用对象请求代理程序结构的技术规范。 c o r b a 有很广泛的应用,它易于集成各厂商的不同计算机,从大型机一直到微型 内嵌式系统的终端桌面,是针对大中型企业应用的优秀的中问件。最重要的是,它 使服务器真正能够实现高速度、高稳定性处理大量用户的访问。现在很多大型网站 后端的服务器都运行c o r b a ,其中有些网站您可能每天都在访问。 c o r b a 的底层结构是基于面向对象模型的,由o m g 接口描述语言( o m g i n t e r f a c ed e f i n i t i o nl a n g u a g e ,o m gi d l ) 、对象请求代理( o b j e c tr e q u e s tb r o k e r ,o r b ) 和i i o p 标准协议r i n t e m e ti n t e r - 0 r bp m t o c o i ,也称f 习络o r b 交换协议) 3 个关键模 块组成。 使用接口描述语言编写的对象接口,使得与语言无关的独立性成为可能。i d l 使得所有c o r b a 对象以一种方式被描述,仅仅需要一个由本地语言( c c + + 、 c o r b a 或j a v a ) 到i d l 的“桥梁”。c o r b a 对象的互通信要以对象请求代理为中介, 这种互通信可以在多种流行通信协议( 如t c p i p 或i p x s p x ) 之上实现。在t c p i p 上,来自于不同开发商的o r b 用i i o p 标准协议进行通讯。 我们知道,为了保持c o r b a 的商业中立性和语言中立性,必须有一个中介, 存在于像c * c o r b a 服务器代码和j a v ac o 砌3 a 客户机这样的实体中间,这就是 i d l 。一个底层对象的若干相关方法和属性被i d l 集入个单一接口。一旦i d l 接 口定义完成,它可以以s t u b 码或框架代码的形式编译成所选用的语言。在所有的 o r b 中都有i d l 编译器。 值得注意的一点是,i d l 不同于其他的面向对象程序设汁语言,我们不能用它 西安理工大学硕士学位论文 指定所定义的类或方法的具体实现。因此,仅仅将它作为一种定义底层对象接口的 语言要好得多。 2 o r b 接口结构 为了创建一个遵从c o r b a 规范的应用程序,o r b 是c 0 r b a 必须提供的。没 有o r b ,c o r b a 应用程序就无法工作。c o r b ao r b 最显著的功能,是对应用程 序或是其他o r b 的请求予以响应。 实现细节对软件开发者的透明性,是o r b 的一个杰出的特性。 在c 0 r b a 应用程序运行期间,o r b 可能被请求做许多不同的事情,包括查找 并调用远程计算机上的对象、负责不同编程语言之间的参数转换( 如c + + 到j a v a ) 、 用动态方法调用激活远程对象等等。 对象的实现( o b i e c l i m p l e m e m a t i o n ) 通过i d l 静态骨架( i d ls t a t i cs k e l e t o n ) 或动 态骨架r d v n a m i cs k e l e t o n ) 的调用来接受请求。 为了调用远程的对象实例,客户端首先获取它的对象参数。客户端在进行远程 请求时使用与本地请求相同的代码,只不过用对象参数代替了远程实例。当0 r b 检 测对象参数并发现目标是远程对象的时候,它会调度这些参数,把请求转移到网络 上,从而连接到远程对象的o r b 上。o r b 可以从对象参数中判断出目标对象是远 程的,客户端却做不到这一点。当客户端发出请求时,对象参数不用去分辨目标对 象的位置。 这保证了对象位置的透明性c o r b a 的这些基本原理简化了分布式对象的 计算机应用的设计。 3 基于c o r b a 应用的优点 使用c o r b a 到底有什么好处呢? 就像不同部门间需要协同工作柬获取最大利润 一样,不同的计算机应用之问也需要协同工作。c o r b a 能完成这些任务。它是丌 放式的、独立于厂商、用于网络上计算机应用的底层结构。任何厂家、计算机、操 作系统、编程语言及网络环境下的基于c o r b a 的应用均使用i i o p 标准协议,所以 任何基于c o r b a 的应用均能协同工作。 在小型的c l i e n t s e r v e r 模式的应用系统中使用c o r b a ,能给系统提供可靠的、 标准的底层结构。可以使用c o r b a 来构建、运行在不同平台上的、用不同编程语 言实现的客户端及服务器端的应用程序。如果企业广泛使用基于c o r b a 的应用, 会带来巨大的商业利益。企业中的不同的应用系统都有不同的功能,能够处理不同 的数据,这些系统如果能结合起来协同工作,就会产生更大的商业价值。如果应用 系统都是用c o 砌j a 来实现,就可以容易地移植到网上,企业内部可以通过网络协 同工作,产品订货单就会滚滚而来了。 随着业务的不断扩展,公司的电子商务站点的负载会不断增大,总有一天负载 量会超过系统预先设计的支持能力。可以使用c 0 1 氇a 来制作基于对象模型的服务 器端的应用系统,解决系统负载的问题。考虑到当前的负载及以后可能达到的负载 情况,可以选择o r b ,它可以在多个服务器之间实现负载均衡。它是基于0 m g 可 移动对象适配器的,当系统负载较重时( 比如运行基于w 曲的应用) ,可以更充分地 利用系统硬件资源。 如果应用系统需要很高的稳定性( 比如股票或证券方面的应用) ,可以利用 c o r b a 提供的容错机制。c o r j 淤的容错机制不仅能实现负载均衡,还能使每一个 对象同时在两个或多个服务器上运行,当其中的一个出现故障时,系统能自动切换 到另一个服务器。如果多个服务器的硬件配置相同,服务器会拥有很高的稳定性。 c o r b a 对象可以用任何一种c o r b a 软件开发商所支持的语言,如c 、c + + 、 j a v a 、a d a 和s m a l lt a l k 等等来编写。同样,c o r b a 再? 象可以运行在任何一种c o r b a 差三芏盆查氢旦垒廛旦 软件开发商所支持的平台上,如s o l a r i s 、w i n d o w s9 5 n t 、o p e nv m s 、d 酒t a 】u n i x 、 h p u x 或a i x 等。这意味着可以在w i n d o w s9 5 下运行j a 、,a 应用程序,同时动态调 入并使用c + + 对象,而实际上该对象可能存储于一个在l m e m e t 上的u n i xw e b 服务 器上。 目前,对于较为流行的编程语言( 包括c + + 、s m a l l t a l k 、j a v a 和a d a9 5 ) ,已经 有了许多第三方的o r b 。随着其他语言的逐渐流行,c o r b a 开发商毫无疑问地要 做出相应的o r b 来支持它们。 4 c o r b a 应用前景 成上千万的站点依赖于c o r b a 搭建企业应用、i n t e m e t 应用及其他应用,有许 多成功使用c o r b a 的案例。 美国c n n 正在使用一个基于c o r b a 事件服务的应用系统。系统用于把那些不 同来源的、不同格式的、不同类型的机器上的大量新闻资料分发给所有的新闻编辑。 新闻编辑再利用一个自动过滤程序来审核这些发来的消息,并把那些与自己工作方 向相符合的重要稿件做上标志,过滤出来。波音公司把接收订单、制造、交货和维 修4 个最重要的制造系统方面的应用集成在一个综合的c o r b a 底层结构上,这些 系统担负着飞机生产的整个过程。c h a r l e ss c h w a b 公司构建了一个基于c o r b a 的 商业应用,利用该系统来与5 0 0 0 个客户保持联系,处理的业务额高达数亿美元。 对象中间件技术发展迅速,各大软硬件厂商都在积极参与有关标准的制定和产 品开发工作,像i b m 、h p 、d e c 、a t & t 、i c l 、m i c r o s o n 等都制定了相应的战略。 许多对象中间件的专门厂商也相继诞生,未来的对象中间件市场将会出现群雄逐鹿 的局面。 2 3 2d c 0 m ( 分布式组件对象模型也称c o m + ) m i c r o s o n 开发的原始的c o m ( 组件对象模型) 可以使用户将组件连接到运行在同 一台计算机或运行在另一台计算机上的服务。如果用户将一个m i c r o s o re x c e l 手艮表 拖放到一个w o r d 文件中的话用户已经感受使用c o m 的基本经历( 双击w o r d 中的 报表将激活e x c e l ) 。如果将同一概念延伸到不同的服务( 如事务或队列管理) 那么同 样的规则依然有效。例如,一个对象可以通过在执行时间激活的内置接口请求队列管 理服务。 然而,c 0 m 的局限性之一是对各种操作系统应用的请求的接口必须通过硬连接 ( h a r d w i r e d ) 接入到应用中。例如,假设订单输入应用包含接口调用,用来查询库存数据 库进行检证然后再更新库存。在这种情况下,数据库必须立即可供使用,否则事务处理 将会失败。 更好的方式是将查询和更新请求保存在消息队列中,然后指示数据库服务器来 读写队列中的消息。这种方式还使应用更灵活,使它们可供分离的便携机使用。但是, 由于必须插入新的接口调用来处理队列中的消息取代直接访问数据库,因此技术费 用很高。 d c o m 在应用与服务之间引入了一种中介层( 所谓的中间收集器) 。当应用发出 服务请求时,中间收集器就被激活。中间收集器的作用是根据保存在应用之外的信息 库中的属性表为应用准备合适的技术环境。 因此,开发人员在使用d c o m 时不必编写大段的程序代码以使应用环境符合要 求。相反这一环境需要的不同服务可以自动地由中间收集器在执行时设置。你甚至 可以设置不同的属性为同一应用定制不同的行为。在执行时,中间收集器将根据环境 和属性设置来调用合适的服务。 9 西安理工大学硕士学位论文 不过,d c o m 还远不止是集成器。你还可能得到实现未来的m s m q ( m i c r o s o 最消 息队列) 服务集成的服务。开发人员同样可以通过直接访问d c o m 和使用一致的应 用程序接口,以排队消息的形式发出对服务的代码应用请求,无需将请求直接发送到 这项服务的提供商。d c o m 的两个组件:记录器和阅读器转发和检索来自m s m q 服 务器的消息,从而隐蔽了服务器要求开发人员提供的不同语义。 最后,d c o m 事件提供实现发布与订阅服务f 这类服务也包括在基本操作系统中 并符合c o m 语义1 的a p i 。这类新型事件服务特性保存每个事件的提供者和订阅者 的信息。可以定义什么必须被监控和谁必须被通知。例如,在上面提到的订单输入系 统中,可以请求通知何时现有存货量达到重订购点,并自动地启动应用来处理这一事 件。这类服务可以在涉及到制度化的信息发布者和多个不确定的订户的应用中派上 用场f 如查询股票市场行情或记录货币市场波动) 。 综上所述,d c o m 提供了多种具有吸引力的特性,这些特性将使各公司可以在开 发和部署阶段节省时间和资金。 2 4w e b 作为分布式网络应用平台的特点 基于w e b 的分布式网络应用,主要是将传统的数据库技术与i n t e m e t 技术相 结合,通过统一的浏览器界面,利用i n t e m e t 访问位于不同地点、不同类型的数据库 资源,为数据库的资源共享、数据库的本地化服务及数据库的分布式合作开发奠定 基础,从而进步增强信息服务部门的网上竞争力。 删数据库信息服务系统主要由客户端浏览器、w e b 服务器和数据库服务器三 部分组成,是典型的b r o w s e r s e n ,e r 结构。基于的数据库信息服务系统主要的 特点有三个: 1 通用信息服务界面 信息服务部门一般都拥有多种内容、多种类型、多种开发平台、本地或远程的 多个数据库资源。w e b 技术和h t m l 的发展应用,为通用信息服务界面的设计提供 了条件。许多基于w e b 的信息服务软件将多个数据库集成在一个平台上,用户可以 很方便地通过浏览器,借助统一的检索界面,实现多数据库检索( 即一个检索命令可 以完成跨多个数据库的检索) 等扩展功能。 2 具有强大功能的站点数据库访问接口程序 站点数据库访问接口程序是开发基于w w w 的数据库信息服务系统的关键,是 公认的技术难点。在i n t e m e t 的发展过程中,不同的系统开发商基于不同的开发平台, 发展了多种站点数据库访问技术,目前主要有: ( 1 ) c g i ( 通用网关接口) 这是传统的接口程序设计方法。c g l 最突出的缺点是操作太慢。除此之外,开 发c g i 需要许多有关h t t p 协议和各种编程概念的支持,而且很难调试和检错,因 此开发难度大。c g i 程序中容易发生的安全隐患,也使c g i 程序开发者非常头疼。 但是,由于c g i 发展历史长,应用广泛,而且不依赖于某种浏览器和w e b 服务器, 因此仍具有一定的市场占有率。 ( 2 ) i d c f 数据库连接器1 与i i s i d c 是i s a p i f i n t e m e t 服务器应用程序编程界面) 标准的一个应用,内含于 w i n d o w sn ts e r v e r 的i i s 中。i s a p i 扩展的执行效率与类似的c g i 应用程序相比可 提高一个数量级,而且更加灵活,可以实现其他方法难以实现的操作。但是,真正 的i s a p i 编程难度非常大,使普通设计人员不敢问津。但是,i d c 的应用使事情简 单化了,只需挺供s o l 查询( 即i d c 文件。在数据库上执行) 和模板f h t x 文件,描 笠三至盆查惑旦终廛旦 述数掘显示和收集的方式) ,即可完成基于数掘库的信息服务。但是,只限于w i n d o w s n t 开发环境。 ( 3 ) a d c f 先进数据连接器) 客户端通过由服务器自动下载和安装a d c 的a c t i v e x 控件,将数据库的大量 记录暂存于客户端,并可以直接在客户端的浏览器查询记录,大大节省了客户端和 服务器端之间记录往返所需的时问,比较适用于需要进行频繁访问的数据库系统; 但是,要求客户端的浏览器必须支持a c t i v e x 技术。 ( 4 ) a d o 和a s p a s p 与a d o 结合、并集成a c t i v e x 控件,可以为用户提供强大的管理功能。 a s p 易于开发、维护和调试,而且不依赖某种浏览器。微软的v i s u a li n t e r d e v 更是 为a s p 的开发提供了个高效的集成开发环境,它提供了基于n t 的完全站点管理 解决方案。 在具体的程序设计中,数据库访问接口程序可以:1 充分利用先进数据库管理系 统的自动优化查询策略功能,通过研究数据库的查询执行规划,优化接口程序所采 用的检索策略,提高系统运行效率。2 充分考虑了多用户、多线程可能引起的问题, 为用户创造稳定、可靠、高效的执行环境。3 加强了安全控制管理,切实保障系统 的安全性。 3 功能强大的后台数据库 目前流行的后台数据库一般都可以与现有数据库的兼容和可转换;与网络操作 系统结合紧密;数据库系统本身具有易管理性、先进性和扩展性;与i n t e m e t i n t r a n e t 技术融合:具有安全机制等。 2 5 基于w e b 的分布式网络应用开发技术 2 5 1a s p ( a c f i v es e r v e rp a g e s ) 及相关技术介绍 a s p ( a c t i v es e r v e r p a g e s ) 是m i c r o s o r 公司于1 9 9 6 年1 1 月推出的w e b 应用 程序开发技术。是提供一个可以集成脚本语言( v b s c r i p t 或j s c r i p t 等) 到h t m l 网 页并作用于服务器端的脚本环境。a s p 将h t m l ,o d b c 数据库访问和其它许多新 颖技术集于一身,从而使w e b 应用系统的设计更加简明而直观。因而日益受到广大 开发人员的关注。 2 5 1 1a s p 的功能和特点: 从软件开发技术方面看,a s p 有如下的特点: 】无须编译。a s p 集成于h t m l 当中,容易生成,无须编译或链接即可直接 解释执行。 2 独立于浏览器。用户端只要使用可解释常规h t m l 码的浏览器,即可浏览 a s p 所设计的主页内容。a s p 脚本是在站点服务器端执行的,用户端的浏 览器不需要支持它。因此,若不通过从服务器下载来观察a s p 主页,在浏 览器端是见不到实际页面内容的。这也正是保证数据库安全的一个重要手 段。 3 面向对象。在a s p 脚本中可暖方便地引用系统组件和a s p 内置组件,还 能够通过定制a c t i v e x 服务器组件来扩充功能。 4 与任何a c t i v e xs c r i p t i n g 语言兼容。除了可使用v b s c i p t 或j s c r i p t 语言进行 设计外,还可通过p l u g _ i n 的方式,使用第三方所提供的其他s c r i p t i n g 语 言。 5 安全性好,源程序代码不会被查看。 a s p 脚_ 布= 在服务器上执行,传递给用 西安理工大学硕士学位论文 户浏览器的只是a s p 执行结果所生成的常规h t m l 码,保证了后台数据库 系统的安全性。 从应用角度看,利用a s p 能够开发出功能丰富的商业网站: 1 处理浏览器传送到站点服务器的表单输入。 2 访问和编辑服务器端的数据库内容。 3 读写站点服务器的文件,实现计数器等功能。 4 提供广告轮播器的文件、取得浏览器信息、u r l 表管理等内置功能。 5 由c o o k j e s 读写用户端的硬盘文件,以记录用户的数据。 6 可以实现在多个主页之间共享信息,以开发复杂的商务站点应用程序。 2 5 1 2a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 草原草原退化治理技术比较考核试卷
- 石墨在海水淡化技术中的材料创新考核试卷
- 别出心裁的课件设计
- 时尚产品设计思维与流程考核试卷
- 罐头食品生产过程中的食品安全监管要求考核试卷
- 2025年棉花加工成套设备合作协议书
- 《民事法律制度》课件
- 农业农业机械智能优化服务批发考核试卷
- 水利工程中的水利工程可行性与评估考核试卷
- 蛋品加工市场营销策略与实践考核试卷
- 《火灾调查 第2版》 课件全套 刘玲 第1-12章 绪论、询问 -火灾物证鉴定
- 施工焊接与质量控制
- 二年级下册口算题1000题大全-
- AQ/T 1119-2023 煤矿井下人员定位系统通 用技术条件(正式版)
- 基本公共卫生服务项目-中医药健康管理服务规范培训课件
- JGJ133-2001 金属与石材幕墙工程技术规范
- 社区智慧养老方案含内容课件
- 2024房产抵账协议书范本
- 多元主体协同治理
- 舞蹈基本功训练与舞蹈鉴赏智慧树知到期末考试答案章节答案2024年兰州文理学院
- 《化妆品原料》课件-油脂的基本特性
评论
0/150
提交评论