(计算机应用技术专业论文)水利信息领域中间件技术的应用研究.pdf_第1页
(计算机应用技术专业论文)水利信息领域中间件技术的应用研究.pdf_第2页
(计算机应用技术专业论文)水利信息领域中间件技术的应用研究.pdf_第3页
(计算机应用技术专业论文)水利信息领域中间件技术的应用研究.pdf_第4页
(计算机应用技术专业论文)水利信息领域中间件技术的应用研究.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机应用技术专业论文)水利信息领域中间件技术的应用研究.pdf.pdf 免费下载

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

文档简介

水利信息领域中间件技术的应用研究 摘要 本文针对水利信息化应用所具有的特点,为国家防汛指挥系统工程服务, 将j 2 e e 和e j b 技术应用到水利领域,提出并实现了面向水利领域的应用框架。 同时侧重对其中的关键技术、体系结构进行理论分析,研究动态生成并发布 s e r v l e t 和j s p 、命名和目录服务j n d i 、分布式对象体系结构e j b 、数据库接口 支持j d b c 和异构数据库的处理以及多层体系结构各层之间的联系和搭配等在 水利领域的实际应用。 本文提出并实现的应用框架将分布式系统自底向上严格地分为五层:数据 层、数据集成层、业务逻辑层、界面控制层和客户界面层。本文利用该应用框 架建立了面向水利领域的分布式多层应用系统:实时工情查询系统和实时水情 查询系统,实现了在行业标准化基础上的构件复用、门户功能和异构数据库的 访问。为国家水利信息化全面实施提供应用服务,并促进中间件技术在水利信 息化应用领域的创新和跨越式发展。 关键词:水利领域、中间件、应用框架、j 2 e e 、e j b n 水利信包领域中日j 件技术的应用研究 a b s t r a c t b a s e do nt h ec h a r a c t e r i s t i c so ft h ea p p l i c a t i o n si nw a t e rr e s o u r c e si n f o r m a t i o n , a na p p l i c a t i o nf r a m e w o r k , t h a ti so r i e n t e dt ow a t e rr e s o u r c e sd o m a i n ,i sp r e s e n t e da n d a c h i e v e di nt h i sp a p e r t h et e c h n o l o g yo fj 2 e ea n de j bi nw a t e rr e s o u r c e sd o m a i ni s i n t r o d u c e dt h i sf r a m e w o r kc a nb es e r v e di nt h ef l o o dc o n t r o la n dd i s p a t c hs y s t e m t h ea r c h i t e c t u r ea n dr e l a t e d k e yt e c h n o l o g y i nt h e f r a m e w o r ka r e a n a l y z e d t h e o r e t i c a l l yi n d e t a i l v a r i o u st e c h n o l o g i e sa p p l i e di nw a t e rr e s o u r c e sd o m a i na r e a l s od i s c u s s e di nt h i sp a p e r , s u c ha sd y n a m i cf o r m a t i o na n d p u b l i c a t i o no f s e r v l e ta n d j s p , n a m i n g a n d d i r e c t o r y s e r v i c e sj n d i , d i s t r i b u t e d o b j e c ta r c h i t e c t u r ee j b , d a t a b a s ei n t e r f a c es u p p o r t e dj d b c ,m e t h o d sd e a l i n gw i t hh e t e r o g e n e o u sd a t a b a s e s a n dt h er e l a t i o n s h i pa n dc o l l o c a t i o nb e t w e e n l a y e r si nm u l t i l a y e r sa r c h i t e c t u r e t h ed i s t r i b u t e d s y s t e mw i t ht h ef r a m e w o r ki ss t r i c t l y d i v i d e di n t of i v e l a y e r s f r o mt h eb o r o mt ot h et o p :d a t al a y e r , d a t ai n t e g r a t i o nl a y e r , t r a n s a c t i o nl o g i cl a y e r , i n t e r f a c ec o n t r o ll a y e ra n du s e ri n t e r f a c el a y e r w i t h i nt h i sa p p l i c a t i o nf r a m e w o r k ,a m u l t i - l a y e rd i s t r i b u t e da p p l i c a t i o ns y s t e mi sb u i l t ,i n t e g r a t i n gr e a l - t i m ee n g i n e e r i n g i n f o r m a t i o ni n q u i r ys y s t e ma n dr e a l t i m ef l o o di n f o r m a t i o ns y s t e mb a s e do n i n d u s t r y s t a n d a r d i z a t i o n , t h ea p p l i c a t i o ns y s t e mf u n c t i o n sc o m p o n e n tr e u s e ,o p e n n e s sf u n c t i o n a n da c c e s st oh e t e r o g e n e o u sd a t a b a s e s ,p r o v i d i n gs e r v i c e sf o rp r a c t i c a la p p l i c a t i o no f w a t e rr e s o u r c e si n f o r m a t i o ni nc h i n ao nal a r g es c a l e ,p r o m o t i n gi n n o v a t i o na n d g r e a t d e v e l o p m e n t o ft h em i d d l e w a r e t e c h n o l o g y i nt h e p r o c e s s o fw a t e rr e s o u r c e s i n f o r m a t i o n k e yw o r d s :w a t e rr e s o u r c e sd o m a i n 、m i d d l e w a r e 、a p p l i c a t i o nf r a m e w o r k 、j 2 e e 、 e j b - 水利信息领域中间件技术的应用研究 刚吾 当前,洪涝灾害、干旱缺水、水环境污染三大水问题已经严重制约着国民 经济和社会发展。“十五”期间,水利部和围家计委都将水利信息化工程作为关 系围计民生的重大应用工程来发展。水利信息是国民经济的基础信息,对于防 洪减灾、维护社会稳定和保障国民经济可持续发展均具有卜分重要的作用和意 义。 水利信息化工程是大规模的分布式应用系统,其建设需要最新的网络和互 联网技术的支持。应用服务器中间件是网络环境下分布式应用系统的软件核心, 是建设水利信息化工程的基础软件支撑平台。 本文针对水利信息化建设的需要,为国家防汛指挥系统工程服务,将j 2 e e 和e j b 技术应用到水利领域,研制开发面向水利领域的应用框架。该应用框架 将客户界面、水利信息处理逻辑和后端服务分割开来,形成多层分布式应用。 为应用软件开发人员提供一种快速创建、部署和维护大规模、基于w e b 的水利 应用构件化系统平台。同时本文利用该应用框架建立了面向水利领域的分布式 应用系统:实时工情查询系统和实时水情查询系统。 本文研究的问题主要包括:动态生成并发布s e r v l e t 和j s p 、命名和目录服 务j n d i 、分布式对象体系结构e j b 、数据库接口支持j d b c 和异构数据库的处 理以及多层体系结构各层之间的联系和搭配等在水利信息领域的实际应用。 本文所作的主要工作是: 1 、将j 2 e e 的多层体系结构应用到水利信息化领域,实现分布式对象体系 结构e j b 在水利信息化工程中的应用研究。 2 、提出并实现了基于j 2 e e 的水利信息领域应用框架。该应用框架将分布 式系统自底向上严格地分为五层:数据层、数据集成层、业务逻辑层、界面控 制层和客户界面层。 3 、利用该应用框架提出并实现了在行业标准化基础上的构件复用,实现了 门户功能和异构数据库的访问。 本文得到国家高技术研究发展计划( 8 6 3 计划) 经费资助,课题名称:面 向水利信息化平台建设的应用服务器中间件及其在国家防汛指挥系统工程中的 应用;课题编号:2 0 0 2 a a l l 3 1 5 0 。 作者根据本文提出并实现的应用框架提出了专利申请,国家知识产权局已 经予以受理。发明名称:基于j 2 e e 的五层体系结构构建方法;专利申请号: 2 0 0 4 1 0 0 1 4 1 3 98 。 水利信息领域中间件技术的应用研究 1 1 研究背景和意义 111 研究背景 第一章绪论 新时期水利工作的三大任务是:1 、防治洪涝灾害;2 、解决干旱缺水;3 、 治理、改善和保护水环境【”。随着水资源管理和水环境保护问题的日益突出, 需要分析、开发和利用的水利信息资源越来越多;对信息的准确性、实时性、 共享程度的要求越来越高。目前,我国在水利信息资源的开发利用方面水平不 离,研i 能及时为国家和相关行业提供全方位的信息服务。 实现水利现代化解决我国三大水问题的复杂性客观上决定了必须采用最先 进的技术手段。水利信息化就是要深入开发水利信息资源,对现有孤立、零散 的水利数据进行集成和管理。 随着通信和计算机技术的迅速发展,我国水利系统初步实现了从水雨情信 息的采集、传输、处理到联机洪水预报;在全国范围内初步建成了“国家水文 数据库”和“全国实时水情计算机广域网”;国家防洪工程数据库等一批数据库 正在规划建设;水利部和一些流域机构已建立网站并进入了互联网络。这些都 为水利信息化的建设创造了条件,但还远不能满足新时期水利工作的需要,特 别是数据处理、加工、共享和应用服务目前还比较薄弱。主要存在着基础数据 不完整、数据存储零散、数据管理分散、应用服务单一等问题。 在i n t e r n e t 和i n t r a n e t 环境下,采用分布式构件技术,建立高可靠性的中间 件软件服务系统,可满足水利信息化建设发展的需要。目前,中间件在水利信 息化领域的应用才刚刚开始,没有形成针对水利信息化的应用框架级支持。 随着信息化技术的飞速发展,各行业、领域对信息化的要求也越来越高, 对软件开发提出了新的要求。针对这些新需求,相应地提出了构件技术和蕊向 领域的应用框架技术。目前,国内外对构件技术的研究已经达到一个较高的水 平,但面向领域的应用框架技术还在不断的发展中,在国内的水利信息化建设 中分布式应用框架技术的研究才刚刚起步。 i n t e r n e t i n t r a n e t 技术的发展是网络技术发展的一个里程碑,用户简单地使 用浏览器便可以从i n t e r n e t 上查询各种信息。分布对象技术已经被用于建立分 布式应用,而构件技术的出现又进一步推进了w e b 环境下分布式应用的发展口】。 但是,如何在w 曲环境下利用构件技术建立一个易于管理、可重用、可伸缩、 水利信息领域中间件技术的应用研究 健壮的、并能为其上的应用提供服务的中间件是i n t e m e t 的一个重要研究方向口1 。 信息管理技术从单层发展到多层,也表明实现i n t e r n e t 应用系统的趋势是 模块化,其独立性更大,可复用性更高,层次划分更加细致。目前,硬件环境 的主流是网络化,软件环境的主流是由大而复杂的综合模块转向更易于抽象和 管理的对象技术下的构件【4 】。建立在中间件之上的i n t r a n e t 应用才能真正实现由 信息提供者向服务提供者的转变。可以预见,将来的i n t r a n e t 应用会与分布式 对象技术结合得更紧密,使整个i n t e m e t 环境成为一个大的分布式对象环境, 从而提供更灵活、更可靠、更复杂和更具有扩展性的网络信息服务口 。面向水 利信息化领域的信息化模式就要适应这一发展趋势,彻底分布式的,以计算机 为中介的知识网络将会在全国水利信息网上形成。多层分布式w 曲体系是 i n t e r n e t 上分布式环境的基本结构,作为其中的中间件系统集成软件平台应 用框架,将在基于w e b 的分布式环境中起关键作用。 应用服务器中间件作为网络环境下企业应用架构从两层的客户机服务器体 系向多层应用体系结构转变的必然产物,已经成为大型分布式应用基础架构的 重要组成部分 6 】。它支持多种国际技术规范,如:j 2 e e 、c o r b a 等,向用户提 供包括数据库连接、事务处理、资源管理等服务功能。应用服务器中间件是近 几年发展起来的技术,为i n t e m e t 环境下的各种应用提供广泛的支持,正在成 为与操作系统和数据库管理系统并列的基础软件领域的三大支柱之一,亦被称 为是“i n t e m e t 上的操作系统”m 。 j 2 e e 是一个标准的多层体系结构,适用于开发和部署分布式的基于构件 的、高度可用的、安全的、可伸缩的、可靠的和易于管理的企业应用程序 8 】。j 2 e e 的主要业务构件是e j b ,e j b 使业务逻辑实现与系统级服务分开,从而使开发 人员可以集中考虑业务逻辑的编程问题州。因此针对水利信息处理松散耦合、 地域分布广泛、突发事件处理要求高的特点,研究建立基于j 2 e e 的高可靠性 和高可用性分布式多层体系结构的水利信息领域应用框架非常必要。 112 研究的理论意义 由于水利信息化工程是一种特定形式的大规模分布式系统,因此本文将已 经成为在多元环境中开发和部署分布式构件应用程序标准的j 2 e e 和e j b 技术 应用到水利行业,具有一定的指导意义。 目前,中间件技术在水利信息化领域的应用才刚开始,没有形成针对水利 信息化的应用框架级支持,为此本文提出并实现的基于j 2 e e 的水利信息化领 域应用框架具有重要的理论意义。该应用框架为实现网络环境下支持大型防汛 调度决策的复杂分布式应用打下基础,使基于w e b 的分布式应用系统结构清晰, 性能优越且易于实现、易于扩展。 水利信息领域中间件技术的应用研究 与此同时,本文还提出并实现了在行业标准化基础卜的构件复用。 113 研究的实用价值 本文研究的问题主要包括:动态生成并发布s e r v l e t 和j s p 、命名和目录服 务j n d i 、分布式对象体系结构e j b 、数据库接口支持j d b c 和异构数据库的处 理以及多层体系结构各层之间的联系和搭配等在水利信息领域的实际应用。 在对中间件技术和面向领域框架技术的研究基础上,研制和开发了基于 j 2 e e 的水刹领域应用框架。其将在水利信息化的建设中取得良好的经济和社会 效益。开发者用该应用框架只需掌握j s p 、s e r v l e t 、会话b e a n 和本地接口的c m p 实体b e a n 的编程方法就可以快速开发出性能优越的分布式计算机应用程序。 作者利用本文提出并实现的应用框架建立了面向水利领域的分布式应用系 统:实时工情查询系统和实时水情查询系统。提出并实现了在水利行业标准化 基础上的构件复用并实现了门户功能和异构数据库的访问。同时该应用框架的 设计、代码和分析等可以在其它领域获得复用,因此具有明显的实用价值。 1 2 本文工作 针对国家水利信息化建设的需要,重点突破中间件的应用技术,研制和开 发面向水利信息化应用的中闻件系统集成应用框架,以促进中间件技术在水利 信息化应用领域的创新和跨越式发展。同时对应用框架的基本组成部件进行分 析,针对水利信息化建设所需的大规模数据处理、分布式事务处理和实时数据 访问与操作等需要,结合其技术特点采取相应的优化措施。 本文得到8 6 3 计划经费资助,课题名称:面向水利信息化平台建设的应用 服务器中间件及其在国家防汛指挥系统工程中的应用。该课题主要包括:建立 具有自主知识产权符合j 2 e e 规范的应用服务器中间件、在此基础之上建立水 利信息化的应用框架、建立典型示范工程、以及与此相应的,如水利信息化行 业标准和规范的制定等一系列基础工作。本文的工作是该课题的一个部分,即 在应用服务器之上建立水利信息化的应用框架以及典型示范工程的部分模块: 实时工情查询系统和实时水情查询系统。 本文所作的主要工作是: 1 、在介绍、分析现有水利领域计算机系统软件体系结构的基础上,将j 2 e e 的多层体系结构应用到水利信息化领域,实现分布式对象体系结构e j b 在水利 信息化工程中的应用研究。 2 、在分析、研究中间件的最新技术动态和技术成果的基础上,提出并实现 了基于j 2 e e 的水利领域应用框架。该应用框架将分布式多层系统自底向上严 水利信息领域中阃件技术的应用研究 格地分为五层:数据层、数据集成层、业务逻辑层、界面控制层和客户界面层。 作者根据该应用框架提出了专利申请,国家知识产权局已经予以受理。该应用 框架使基于w e b 的分布式系统结构清晰、安全性好、性能优越且易于实现。本 文利用该应用框架研制开发了面向水利领域的应用系统;实时工情查询系统和 实时水情查询系统。同时利用该应用框架提出并实现了在行业标准化基础上的 构件复用,实现了门户功能和异构数据库的访问。 1 3 本文组织 第一章绪论。介绍本文的研究背景和意义、本文工作以及本文组织。 第二章水利信息领域现状。介绍并分析了水利领域计算机系统软件体系结 构的现状,在此基础上说明为何要将多层体系结构应用到水利信息领域。 第三章中间件技术。介绍并比较了三种具有代表性的中间件技术: c o r b a 、n e t 和j 2 e e ,在此基础上提出将j 2 e e 的多层体系结构应用到水利 信息领域。 第四章基于j 2 e e 的水利领域应用框架。在分析、研究j 2 e e 的最新技术 动态和技术成果的基础上,研究多层体系结构各层之间的联系和搭配,针对水 利领域特殊需求研制开发了面向水利信息化的应用框架。 第五章应用框架在实时工情查询系统中的应用。将j 2 e e 和e j b 技术应用 到水利信息领域,同时详细介绍利用本文研制开发的应用框架进行基于w e b 的 水利领域分布式系统:实时工情查询系统开发的具体实现过程和系统特点。 第六章框架复用在实时水情查询系统中的实现。借助实时水情查询系统的 研制开发进一步说明本文提出并实现的水利领域应用框架的功能:门户功能、 异构数据库的访问和框架复用。 第七章总结与展望。论文总结和工作展望。 最后是:参考文献、附录、致谢和学习期间发表的主要论文。 水利信息领域中间件技术的应用研究 2 1 概述 第二章水利信息领域现状 水利部门历来十分重视水利数据的采集、处理、共享与应用工作。随着通 讯和计算机技术的迅速发展,全国水利系统初步实现了从水雨情信息的采集、 传输、接受、处理、监视到联机洪水预报口。 信息采集系统可提供覆盖全国七大江河流域、重点防洪地区、易旱地区的 各类信息,包括水情、工情、早情和灾情信息,在半小时内完成各类信息的收 集【“。通信系统提供了卫星、微波、移动通讯等资源,为各类信息传送、异地 会商等提供了可靠保证。 计算机网络系统构建的中国水利信息网和中央局域叫,为扩大信息源、实 现信息交换、实现数据分布存储和分布处理等提供了支持。 在全国范围内初步建成了“国家水文数据库”和“全国实时水情计算机广 域网”,国家防洪工程数据库等一批数据库正在规划建设。 水利部门办公自动化的水平也在逐步提高,开始实行远程文件传输、公文 管理和档案管理。水利部和一些流域机构、省市水行政主管部门、科研院所和 重点企业,已建立网站并进入r 互联网络。 中央防洪抗旱部门已经建成并投入使用的计算机软件系统主要有:l 、气象 信息接受处理系统;2 、气象产品服务系统;3 、水情电报翻译、处理系统;4 、 水情信息服务系统;5 、洪水预报系统;6 、实时水情数据库系统【l 。另外还有 水文数据库应用系统、全国防洪调度系统和会商系统等。 上述计算机系统在防洪抗旱工作中发挥了很大作用,有效的减免了洪涝旱 灾害,取得了巨大的经济和社会效益,同时也为水利信息化的建设创造了条件。 但现有系统也存在一些不足,较突出的有:现有系统的开发着眼于具体业 务应用,整体规划欠佳,在功能上既有交叉,又有空缺;系统功能不能满足日 益增长的生产需要,特别是数据处理、加工、共享和应用服务目前还比较薄弱: 系统结构主要限于两层c s 和b i s ,模块化程度较差,扩展、移植困难;同时 现有水利领域诸多系统未能实现系统集成,主要存在着基础数据不完整、数据 存储零散、数据管理分散、应用服务单一等问题,不能及时提供全方位的信息 服务j 。 目前水利领域计算机系统主要采用的软件体系结构是:c s 、b s 或者是 c s 和b s 相结合的两层体系结构。 水利信息领域中间件技术的应用研究 2 2 c s 结构 2 0 世纪8 0 年代后期,出现了c s ( c l i e n t s e r v e r ,客户机服务器) 体系结 构f l ”。c s 结构将事务处理逻辑分离为服务器端和客户端两个部分,服务器端 实现大量的数值计算、查询、统计等工作,并通过网络传递处理结果信息,客 户端完成请求的处理和处理结果的表示。 c s 结构与集中式大型计算系统比较,不仅提高了网络资源的使用效率, 更主要的是通过对服务器端和客户端有效资源的充分利用,大大提高了处理的 速度,并具有处理并发、协作和一致性的能力。 c s 结构针对数据库平台,在前后端进行应用开发。具体实现为:在后端 ( 服务器端) 使用数据库管理系统实现数据库的设计、管理和数据库操作的开 发,负责数据持久存储;在前端( 客户机端) 实现用户的交互操作接口,提供 用户操作界面以及数据库的操作接口,即到数据库服务器的通信接几,负责数 据输入和业务逻辑处理。 水利领域现有一批以洪水预报系统和气象系统为代表的计算机应用系统采 用了c s 结构。它们的共同特点是:l 、优点:客户界面灵活,几乎可以满足用 户任何个性化的特殊要求:运行效率高。2 、缺点:开发效率低,周期长:维护 工作量大、版本更新工作量太;每个客户端必须与数据库保持连接,限制了系 统支持的用户数量。 2 3 b s 结构 为了克服c s 结构维护工作量大、版本更新工作量大的主要缺点,出现了 b s ( b r o w s e r s e r v e r ,测览器,服务器) 软件体系结构。b s 结构将所有框架信 息组织在h t m l ( h y p e r t e x tm a r k u pl a n g u a s e ,超文本标记语言) 页面上,通 过动态页面与数据库建立连接,客户端不需任何特定应用程序和数据。 从实现原理上看,b s 结构也是客户机,服务器结构的一种实现。b s 结构 的服务器以i n t r a n e t 服务器为主,提供w w w ( w o r l dw i d ew 曲,万维网) 和f t p ( f i l et r a n s f e rp r o t o c o l ,文件传输协议) 等服务;客户端则统一使用浏览器。 i n t r a n e t 在数据传输上基于文件和超文本信息,因此,如果需要大量的数据管理 和操作,仍然需要数据库管理系统。b s 结构大大简化了客户端,使“无需安 装”的客户端成为现实。 水利领域现已有一批以水情信息系统为代表的计算机应用系统采用了b s 软件体系结构。它们的共同点是:1 、优点:维护工作量小;版本更新工作量小: 降低了对客户机的软硬件配置要求。2 、缺点:由于采用超文本数据传输和统一 水利信息领域中日】件技术的应用研究 的浏览器界面,用户界面欠灵活;运行效率低,特别是有图形操作时。 2 4c s 和b s 相结合的软件体系结构 因为c s 和b s 结构各有优缺点,为了集成它们的优点,现有水利领域以 会商系统为代表的一一系列计算机应用系统采用了c s 和b s 相结合的体系结构。 c s 方式下完成大多数的业务分析功能和信息显示查询功能。在服务器端 使用各类数据库服务器:在客户机上安装气象产品应用、洪水预报、防洪调度、 汛情监视等信息处理和数据接受处理系统。 b s 方式下主要实现部分信息显示查询和分析功能,以实现信息发布和分 布式的信息查询。在服务器端使用w w w 服务器、f t p 服务器、新闻组 ( n e w s g r o u p ) 服务器和数据库服务器;客户端主要是浏览器和新闻组阅读程 序。 但c s 和b s 相结合的软件体系结构依然存在并发控制、负载平衡,故障 切换支持等问题。而且开发的系统不通用,软件的可移植性、互操作性、复用 性及安全性依然较差。 2 5 分布式多层体系结构 251 多层结构的产生 上述c s 、b s 或者是c s 和b s 相结合的软件体系结构都属于两层客户机 ,服务器结构,随着网络的更进一步发展,许多软件需要在异构环境下运行,应 用的规模也从局域网发展到广域网。在这种情况下两层客户机服务器结构的局 限性就暴露出来了,于是分布式三层或多层体系结构应运而生。 二十世纪9 0 年代初,随着c o r b a ( 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 ,公用对象请求代理体系结构) 1 0 标准的颁布,出现了三层体系结 构【9 1 。三层结构对传统的客户机服务器结构进行了扩展,在客户端和服务器端 之间增加了应用服务器作为中间层,中间层由被称为中间件的软件构成,在中 间层中实现主要的业务逻辑。 三层结构使应用程序分为数据服务层、中间应用层和客户层。其中,数据 服务层执行中间层提交的数据请求命令,负责应用系统的数据服务和数据的持 久存储;中间业务层接受客户层的服务请求,实现核心业务逻辑处理,将业务 逻辑转换为服务器能够执行的命令交服务器执行,并将服务器处理的结果返回 给客户层;客户层提供用户交互和数据表示,负责将收集到的用户请求信息提 水利信息领域中间件技术的应用研究 交巾间应用层进行业务逻辑处理,并将结果显示给用户。 如果将系统分散到不同的机器上就是所谓的分布式川。 三层结构的应用使业务逻辑具有更好的伸缩性,这时业务逻辑只放在中间 层,是整个应用程序中处理量最大的一块。当把中间层进一步模块化和分布化 后,出现了分布式多层体系结构。 2 5 2 多层结构的特点 在多层结构中,要求层与层之间必须有明确的接口定义,从而保证多层之 间可以协作完成应用任务【2 】。各层间通信通过公共接口实现,每层只能看到其 邻近层的公共接口,一个层的改动对其它层的影响很小,这一规则使系统可以 轻松地扩展并自由升级【1 “。 多层体系结构是在客户机服务器结构和分布式技术的基础上,将业务逻辑 分离出来移到一个或多个中间层,通过对中间层的有效组织和管理,采用负载 平衡、动态伸缩和标准接口等技术,将客户机与服务器高效地组合在一起【i ”。 相对而言,分布式多层体系结构有以下的特色和优点:加快开发过程,降 低开发成本:通过复用现有的、预先测试过的业务构件和数据访问构件,可以 更快地开发新的应用程序。隔离了由于改变带来的影响:只要接口保持刁i 变, 一个层上的改变不会影响其它层上的构件。分布式多层体系结构提供了很强的 可伸缩性、异步通讯能力,和更好的安全保障,同时分布式多层体系结构的中 间层能够提供广泛的异构数据库访问和复制能力口】。 随着水利领域应用系统设计的复杂度增加,以及新的应用开发技术,如图 形用户界面、分布式处理、庞大的分散网络和w e b 技术等的使用,使得面向水 利领域的信息化工程成为一种特定形式的大规模分布式应用系统,因此需要采 用多层体系结构。 正准备投入使用的黄河防汛信息系统的部分模块使用了a s e n e t ,采用了 以n e t 为中间件的多层结构。 2 6 本章小结 本章介绍并分析了水利领域计算机系统软件体系结构的现状。现有水利领 域诸多计算机系统主要采用的是c s 、b s 或者是c s 和b s 相结合的两层客户 机服务器软件体系结构,由于这些系统本身各有优缺点且未能实现系统集成, 因此得出结论:采用分布式多层体系结构才能适应新时期水利信息化的需要。 水利信息领域中i 嘲件技术的应用研究 第三章中间件技术 多层结构使用中间件克服了客户机服务器两层结构以单一服务器和局域网 为中心、系统难以扩展、维护成本高、软件的移植性差等缺点”“。具有瘦客户、 易维护、易扩展、开发效率高和安全性高等优点。 中间件是运行于服务器端位于操作系统和应用程序之间的通用服务,它的 主要作用是用来屏蔽网络硬件平台的差异性和操作系统与网络协议的异构性, 使应用程序能够比较平滑地运行于不同平台上i 。与此同时中间件在负载平衡、 连接管理和调度方面起了很大作用,使采用多层体系结构的应用程序性能得到 了大幅提升,满足了关键业务的需求。 针对水利信息处理松散耦合,分布式的特点,采用分布式多层体系结构, 可以满足水利信息化建设发展的需要。当前可以使用的、并具有一定竞争能力 的用来开发分布式多层体系结构应用程序的中间件技术包括:c o r b a 、n e t 和j 2 e e t ”】。下面分别予以简要论述。 3 1c o r b a c o r b a 是c o m m o no b j e c tr e q u e s tb r o k e r 时c 1 1 i t e c t u r e ( 公用对象请求代理 体系结构) 的缩写,它是开放的、独立于供应商的、语言中立的、和操作系统 无关的规范,由对象管理组织( o b j e c tm a n a g e m e n tg r o u p ,简称o m g ) 开发出 来用于支持应用程序通过网络工作。c o r b a 的特点在于它的i d l ( i n t e r f a c e d e f i n i t i o nl a n g u a g e ,接口定义语言) ,i d l 定义了与潜在客户契约式的接口, 使用i d l 规范编写的构件可以跨语言和操作系统进行移植”。 图3 1 【“1c o r b a 体系结构 如图3 i b 6 i 所示,c o r b a 体系结构具有4 个基本要素:o r b ( o b j e c tr e q u e s t b r o k e r ,对象请求代理) 、c o r b a 服务( c o r b as e r v i c e s ) 、c o r b a 设施( c o r b a f a c i l i t i e s ) 和业务应用程序对象( a p p l i c a t i o no b j e c t s ) 。 o r b 是对象传递者,它使得业务应用程序对象可以透明地发送请求,并且 水利信息领蛳卜间件技术的应用研究 接受本地或者远程对象的响应。c o r b a 服务是由系统级服务韵集合组成的, 这些系统级服务根据i d l 规范进行打包,并且可供业务应用程序对象使用。 c o r b a 设施是直接供业务应用程序对象使用的应用程序框架。业务应用程序 对象封装了业务逻辑,并通过o r b 使用c o r b a 服务和c o r b a 设施。 c o r b a 体系结构提供的基本结构特征如下【1 7 】:1 、位置透明:它允许客户 端应用程序通过网络访问对象,同时不需要知道对象在哪里。2 、支持分布式网 络:符合c o r b a 的产品独立于所有的平台,这就允许应用程序能工作在广泛 的系统上。3 、接f _ 1 和实现隔离;客户端通过接| 调用对象,服务器上实现的改 变不会直接影响到客户端。 迄今为止,c o r b a 平台的两个主要缺点是编写c o r b a 应用程序的复杂 性和c o i u l a 应用程序的总体性能m 】。 3 2 n e t m i c r o s o rn e t 是一个丰富的产品套件,它能创建优秀的分布式多层体系结 构应用程序。总体的n e t 平台体系结构包括:n e t 框架、v i s u a ls t u d i o n e t 以及n e t 服务等【】”。 n e t 平台最重要的部分是n e t 框架,n e t 框架提供了语言的中立性和语 言的互操作性。这是一个通用的运行时环境,与操作系统有密切的联系。它 包括面向构件的中间件底层软件( c o m + ,c o m m o no b j e c tm o d e l ) 、c l r ( c o m m o nl a n g u a g er u m i m e ,通用语言运行时) 环境、即时编译器和一组使 用n e t 构件模型的操作系统库包。在一个n e t 系统中的每个服务层都运行在 支持n e t 框架的操作系统上。n e t 框架包括c l r 环境,它类似于可达到同样 目标的j a v a 2 运行时环境( j r e ,j a v a 2r u n t i m e e n v i r o n m e m ) 。c l r 是基于n e t 的应用程序与底层硬件的中介者,所有的n e t 代码最终都在这个c l r 上执行。 与n e t 框架联系最密切的是开发工具v i s u a ls t u d i o n e t ( 2 1 1 。v i s u a l s t u d i o n e t 是语言中立的,可以把它看作是一个开放的程序设计平台,各种语 言都可以被插入到这个平台上。 n e t 服务是m i c r o s o f t 基于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 ,可扩展标 记语言) 的w e b 服务平台f ”。n e t 的主要目标是帮助开发者通过“w e b 服务” 创建可从任何类型的设备访问所需资源的协同应用1 2 2 】。 n e t 借助s o a p 协议( s i m p l e o b j e c ta c c e s sp r o t o c o l ,简单对象访问协议) 和x m l 技术将软件开发带入一个新的时代,即以重用服务作为软件开发的基 础。s o a p 和w e b 服务共同构成了n e t 平台的基础【“。 w e b 服务、s o a p x m l 和c l r 是n e t 的精髓【1 3 1 。 水利信息领域中间件技术的应用研究 3 3j 2 e e j 2 e e 是j a v a2p l a t f o r m ,e n t e r p r i s ee d i t i o n ( j a v a2 系统平台企业版) 的缩 写,是s u n 公司推出的开放的、基于标准的平台。j 2 e e 用于开发、部署和管理 面向w e b 的以服务器为中心的应用程序。 j 2 e e 现已成为使用最广泛的构建多层应用系统的开发平台,全球主要的商 业网站和管理信息系统大多采用j 2 e e 平台作为首选的w e b 开发技术。 3 3 1j 2 e e 体系结构 j 2 e e 是种技术规范,它给开发人员提供了一个工作平台,它定义了整个 标准的应用开发体系结构和一个部署环境。j 2 e e 技术规范是以容器为中心的, 容器是运行在服务器上的软件实体,用于管理特定类型的构件,j 2 e e 用容器为 驻留在其中的构件提供了一种可管理的运行环境和系统级服务【7 1 。 图3 2 t ”1j 2 e e 体系结构 如图32 t 2 5 1 所示的j 2 e e 体系结构显示了四个容器。它们分别是:l 、a p p l e t 容器,用于驻留j a v aa 口p l e t 构件:2 、应用程序客户容器,用于驻留j a v a a p p l i c a t i o n ;3 、w e b 容器,用于驻留j s p ( j a v as e r v e rp a g e s ) 和j a v as e r v l e t : 4 、e j b 容器,用于驻留e j b 构件。 j 2 e e 以挖s e ( j a v a2p l a t f o m ,s t a n d a r de d i t i o n ,j a v a2 系统平台标准版) 为基础,所有j 2 s e 中的技术都可以被支持,因此具有j a v a 语言“一次编写, 随处运行”的特点。 j 2 e e 是组协调规范,利用标准化、模块化的构件简化应用程序。由于构 件本身所具有的自治性和地址透明性,因此,基于j 2 e e 的应用程序就具有可 水利信息领域中闻件技术的应用研究 管理性、复用性和伸缩性好的优点。 j 2 e e 支持群集技术,即在j 2 e e 中,容器和构件可以分散在多个服务器上, 由于消除了单一点的故障,因此j 2 e e 的应用程序具有高可用性和高可靠性。 j 2 e e 利用j a a s ( j a v aa u t h e n t i c a t i o na u t h o r i z a t i o ns e r v i c e ,j a v a 验证和授 权a p i ) 提供了j a v a 授权和身份验证服务,再加上j a v a 语言本身的安全机制, 为j 2 e e 应用程序提供了安全性。 332j 2 e e 核心技术 j 2 e e 的最新版本是j 2 e e l 4 ,它支持的核心技术包括:j s p 20 、s e r v l e t 24 、 e j b 21 和j d b c 3 0 等a p i ( a p p l i c a t i o n p r o g r a m m i n gi n t e r f a c e ,应用程序编程接 口) 7 1 。其中,j s p 2 0 获得了新的x m l 语法,并加强了自定义标志机制;s e r v l e t 24 获得了事件和过滤器i s 。e j b 21 改变了容器管理的持久性,并支持消息驱动 b e a n ,进行异步处理。j d b c 30 提供了与关系型数据库的连接并可执行s q l ( s t r u c t u r e dq u e r yl a n g u a g e ,结构化查询语言) 语句,它与j a v a 远程方法调用 ( r e m o t em e t h o di n v o c a t i o n ,r m i ) 和j n d i ( j a v a n a m i n g a n dd i r e c t o r yi n t e r f a c e , j a v a 命名和目录接口) 共同构成了分布式开发的j 2 e e 技术【2 】。 e j b 是j 2 e e 的主要业务构件也是j 2 e e 平台的中心,e j b 提供了实现复杂 业务逻辑的标准框架8 】。e j b 使业务逻辑实现与系统级服务分开,从而使开发 人员可以集中考虑业务逻辑的编程问题。这里的系统级服务是由e j b 容器提供 的,包括诸如:安全、事务完整性、远程通信和伸缩性等服务。 j 2 e e 的j c a ( j 2 e ec o n n e c t o ra r c h i t e c t u r e ,连接器体系结构) 使j 2 e e 应 用程序能够集成非j a v a 语言开发的应用程序,主要用于提高现有应用系统与原 有系统集成的灵活性,同时降低集成项目的成本和复杂程度【2 6 】。 j 2 e e l 4 新增加的w e bs e r v i c e sf o rj 2 e e 规范定义了在j 2 e e 应用程序服务 器中如何支持w e b 服务。它定义了w e b 服务的客户端模型、部署模型和运行 环境模型,从而使得w e b 服务在不同的应用服务器之间保持良好的移植性1 7 】。 3 4 j 2 e e 与c o r b a 的比较 j 2 e e 与c o r b a 作为开放的多层体系结构技术规范多年来一直相互借鉴, 共同发展。例如,j 2 e e 规范中的j a v a l d l 和弛缸一o p 就是c 0 砌 a 技术【2 】。 j a v a i d l 使j a v a 程序可以与基于c o r b a 的系统互连:r m i - - i i o p 是j a v a 远程方法调用( r e m o t em e t h o di n v o c a t i o n ,r m 【) a p i 和i i o p ( i n t e m e ti m e r o r bp r o t o c o l ,i n t e m e to r b 间协议) 的混合体,i i o p 用c o r b a 连接j a v a 程 序与遗留系统【9 i 。 水利信息领域中间件技术的应用研究 j 2 e e 和c o r b a 之间最重要的筹别是:j 2 e e 基f 单+ 的j a v a 语言,而 c o r b a 支持语言中立。正因为c o r b a 的跨平台、跨语言性,使得c o r b a 规 范大而全。用c o r b a 开发应用程序复杂度高,难以实现,而且基于c o r b a 的应用程序总体

温馨提示

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

评论

0/150

提交评论