(计算机应用技术专业论文)基于中间件的中招系统的研究.pdf_第1页
(计算机应用技术专业论文)基于中间件的中招系统的研究.pdf_第2页
(计算机应用技术专业论文)基于中间件的中招系统的研究.pdf_第3页
(计算机应用技术专业论文)基于中间件的中招系统的研究.pdf_第4页
(计算机应用技术专业论文)基于中间件的中招系统的研究.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(计算机应用技术专业论文)基于中间件的中招系统的研究.pdf.pdf 免费下载

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

文档简介

中文摘要 本文的工作基于高级中等学校网上招生系统,该系统是一个基于i n t e r n e t 的大型分布式信息管理系统,是通过计算机网络传递招生工作的各种信息,控制 整个招生流程的一种新的招生模式。其目的在于提高招生工作的信息化程度,提 高招生工作的效率,减轻招生工作的通信联络负担。它改变了传统的以纸质档案 材料为唯一介质的招生模式,所有考生档案材料、学校招生计划等信息都实行电 子化,录取工作中的所有信息都以电子数据的形式通过网络在招办与各学校之间 传递。该系统由市招办使用的现场子系统、数据代理传输系统和区县招办、招生 学校使用的客户端远程录取子系统组成。 中招系统是一种典型的松散耦合的分布式信息系统,同时也是分布式多媒体 协作系统。分布式多媒体应用的一个关键问题就是多媒体的q o s 管理和控制问 题。文中提出了一种应用层的基于中间件的q o s 管理模型,该框架允许用户和 应用对q o s 管理策略和适应性调整策略进行应用级的定制。文中在资源管理中 提出了通用资源接口及其具体实现方法,并从应用层的角度,在网络层和操作系 统之上提出通用接口应具备的功能,以及如何与q o s 管理器协调工作,及其在 中招系统中的简单实现。 文中重点研究了数据代理中间件技术。数据代理技术,是一种减小网络流量, 提高响应速度,增加系统安全性的一种有效方法。数据代理中间件将与客户应用 有关的少量数据下载至客户机,由客户机在本地进行处理,并将处理结果上载到 服务器。从而实现对各类数据的缓存提高了信息访问的效率,减小了网络流量。 其中的数据库连接组件实现多客户共享数据库连接,有效地改善了多用户对数据 库的访问性能,优化了网络传输性能,事务处理组件负责对客户的访问服务进行 相应的事务处理。当服务器与客户端建立了网络连接以后,通过特定的通信协议 分析客户访问请求。对不同的服务请求调用相应的事务处理模块,并把事务处理 的控制权转到相应的事务处理程序。安全访问代理组件实现了对数据库的安全 访问。运用数据代理中间件技术,可以适应应用多变的需求,同时降低应用客户 端的复杂性。 关键词:分布式信息管理、q o s 管理模型、中间件、数据代理 a b s t r a c t t h i sp a p e ri sb a s e do nt h eo n l i n ee n r o l l m e n ts y s t e mo f h i g hs c h 0 0 1 w h i c hi sa l a r g e - s c a l ed i s t r i b u t e di n f o r m a t i o nm a n a g e m e n ts y s t e mb a s e do nt h ei n t e m e ta n da l s o a n e we n r o l l m e n t m o d e t h a t t r a n s m i t s a l l k i n d s o f i n f o r m a t i o na b o u t e n r o l l m e n t j o b a n dc o n t r o l st h ew h o l e e n r o l l i n gw o r k f l o wt h r o u g ht h ec o m p u t e rn e t w o r k mg o a lo f t h i ss y s t e mi st oe n h a n c et h ei n f o r m a t i z a t i o nd e g r e ea n dt h ee f f i c i e n c yo f e n r o l l m e n t j o b r e d u c e si t st h ec o m m u n i c a t i o nb 珊d e n i t 啪c h a n g et h et r a d i t i o n a le n r o l l m e n t m o d ew h i c ht a k i n gt h ep a p e rf i l e sa st h eo n l ym e d i u m a l lt h ei n f o r m a t i o na n df i l e so f e x a m i n e e s ,e n r o l l i n g - p l a no f s c h o o la r cc h a n g e d t oe l e c t r o n i ct y p e , a n da l s o ,a l lt h e i n f o r m a t i o ni nt h ee n r o l l m e n ti st r a n s m i t t e db ye l e c t r o n i cd a t af o r mb e t w e e n e n r o l l m e n t e e n w a lo f f i c ew i t he a c hs c h o o lt h r o u g ht h en e t w o r k t h es y s t e mi s c o m p o s e do f t h es p o tb r a n c hs y s t e m ,t h ed a t aa g e n c yd e l i v e r ss y s t e ma n dt h ec l i e n t t i e rl o n g - r a n g ee n r o l l m e n tb r a n c hs y s t e m ,w h i c hu s e db yt h ef i l i a t i o n se n r o l l m e n t 0 伍e ea n ds c h 0 0 1 h i g hs c h o o lr e c r u i t m e n ts y s t e mi sat y p i c a ll o o s ec o u p l i n gd i s t r i b u t i o n a l i n f o r m a t i o ns y s t e m ,w h i c hi sa l s oad i s t r i b u t i o n a lm u l t i m e d i ac o o r d i n a t i n gs y s t e ma t t h es a m et i m e t h ek e yp r o b l e mo ft h ed i s t r i b u t i o n a lm u l t i m e d i aa p p l i c a t i o ni sa b o u t t h eq o sm a n a g e m e n ta n dc o n t r o lo fm u l t i m e d i a i nt h ea r t i c l e ,aq o sm a n a g e m e n t m o d e lo fa p p l i c a t i o nl a y e rb a s e do nt h em i d d l e w a r ei sd e s i g n e d , t h i sf r a m ep e r m i t s t h eu s e l $ a n dt h ea p p l i c a t i o nc a r r yo nt h ea p p l i c a t i v ef r a m et ot h eq o sm a n a g e m e n t s t r a t e g ya n dt h ec o m p a t i b l ea d j u s t m e n ts t r a t e g y t i l i sa r t i c l ed e s i g n st h eg e n e r a l r e s o l l r c e sc o n n e c t i o na n di t sc o n c r e t er e a l i z a t i o nm e t h o di nt h er e s o u r c em a n a g e m e n t t h ef u n c t i o nt h a tt h eg e n e r a lc o n n e c t i o ns h o u l dh a v e , w h a ts h o u l db ed o n ei ni t s c o o r d i n a t i o n 谢t hq o sm a n a g e r , a n di t ss i m p l ei m p l e m e n t a t i o ni nt h es e c o n d a r y s c h o o lr e c r u i t m e n ts y s t e ma r ca l s op r o p o s e do u ti nt h ea r t i c l e a l lo ft h e s ea r eb a s e d o nt h en e t w o r kl a y e ra n do p e r a t i n gs y s t e mf r o ma p p l i c a t i o nl a y e ra n g l e t h et e c h n i q u eo fd a t aa g e n c ym i d d l e w a r ei ss t u d i e dm a i n l y t h i si sa ne f f e c t i v e m e t h o dt h a tr e d u c e st h en e t w o r kc u r r e n tc a p a c i t y , e n h a n c e st h es p e e do fr e s p o n s e , a n di n c r e a s e st h es e c u r i t yo ft h es y s t e m 1 1 l ed a t aa g e n c ym i d d l e w a r ed o w n l o a d st h e f e wd a t a , w h i c hr e l a t e dt ot h ea p p l i c a t i o no fc u s t o m e r , t ot h ec l i e n t sw h e r et h ed a t a w i l lb ep r o c e s s e dl o c a l l y , a n du p l o a d st h ep r o e e s s e dr e s u l t st ot h es a r v e r a l lo f t h e s e d o n ec a na c h i e v et h eb u f f e ro fv a r i o u sk i n d so fd a t a , e n h a n c et h ei n f o r m a t i o n a c c e s s i n ge f f i c i e n c y , a n dr e d u c et h ec u r r e n tc a p a c i t yo fn e t w o r k d u r i n gt h es y s t e m , t h ed a t a b a s e - j o i n e dm o d u l em a k e sm u l t ic l i e n t ss h a r et h ed a t a , i m p r o v e st h e d a t a b a s l g i sf u n c t i o no fb e i n ga c c e s s e db yc l i e n t s ,a n do p t i m i z e st h ed e l i v e rf u n c t i o n 1 1 1 eb u s i n e s s - h a n d l e dm o d u l es e r v e sf o rt h ec l i e n t s a c c e s s ,a f t e rt h es e r v e ra n dc l i e n t s h a v ee s t a b l i s h e dt h en e t w o r kc o n n e c t i o n , i ta n a l y s i st h ea c c e s s i n gr e q u e s to f o u s t o m e r t h r o u g hs p e c i f i cc o r r e s p o n d i n gp r o t o c o l ,t r a n s f e rd i f f e r e n tm o d u l ef o rt h ec l i e n t s r e q u e s t ,a n dh a n di nt h ec o n t r o lp o w e rt ot h ec o r r e s p o n d i n gb u s i n e s s - h a n d l ep r o g r a m n e s e c u r i t y - a c c e s s e dm o d u l es a f e g u a r d st h ed a t a b a s e t h r o u g ht h et e c h n i q u e o f d a t a a g e n c y m i d d l e w a r em e n t i o n e da b o v e , t h eu s e rn o to n l yc a ns a t i s f yt h er e q u i r e m e n t so f c l i e n t s ,b u ta l s om a yl o w e rt h ec o m p l e x i t yc o m ef r o mt h ec l i e n t s k e yw o r d s :d i s t r i b u t e di n f o r m a t i o nm a n a g e m e n t , q o sm a n a g e m e n tm o d e , m i d d l e w a r e , d a t aa g e n c y 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得蠡凄盘鲎或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名起尔材 签字日期御l ,年1 月f 日 学位论文版权使用授权书 本学位论文作者完全了解鑫盗蕉堂有关保留、使用学位论文的规定。 特授权盘洼盘堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位做作者躲趟材导师勰枷冈 签字日期:朋年1 月f o 日签字日期:2 咿占年,月,日 第一章高级中等学校网上招生系统简介 第一章高级中等学校网上招生系统简介 高级中等学校网上录取系统是招生学校录取新生所需要的全部信息由市招 办通过计算机网络传给招生学校,由招生学校根据这些信息决定对考生的录取与 否。这种录取模式改变了招生学校通过审阅考生的纸介质档案决定其录取与否的 传统模式,把“物流”变成了“信息流”。这是一种全新的招生录取管理模式, 它利用计算机信息处理技术和网络技术,实现了考生档案数字化、信息传输网络 化、录取过程无纸化。大大减少了人为因素的干扰,更好地保证了录取工作的公 平、公正。 1 1 系统功能 1 1 1 系统组成 通过对各部分业务流程的分析,确定中招网上录取系统可由9 个子系统组 成,它们分别为:原始数据管理子系统、投档子系统、客户端子系统、数据传输 服务子系统、数据检查和统计报表子系统、录取检核子系统、计划审核子系统、 系统管理子系统和帮助子系统。 图1 - 1 中招子系统组成图 第一章高级中等学校网上招生系统简介 1 1 2 原始数据管理子系统 这部分主要解决如下几个问题:原始数据导入导出、基础数据维护、日志数 据维护、数据合法性检查。 ( 1 ) 原始数据导入导出功能 导入要求用户在前期数据采集过程中对数据已进行了数据有效性、致性检 查。数据导入仅仅实现数据从f o x p r o 表中转入到o r a c l e 中。 ( 2 ) 基础数据维护功能 基础数据维护是用于考生基础信息的修改,包括考生基本信息、考生报名信 息、考生志愿信息、考生成绩信息。 ( 3 ) 日志数据维护功能 日志数据在系统运行时记录了各种操作的执行过程,它要求全面、详细、及 时。日志数据在系统执行时增长速度极快。在保证日志数据完备的前提下,要有 较高查询效率。 ( 4 ) 数据合法性检查功能 数据合法性的检查结果要产生明确的报告,对基础数据逻辑合法性错误提供 直接地、方便地修改手段,记录数据的修改日志。在本阶段需要的统计报表有: 报名志愿统计表,高级中等学校招生考试情况分段统计表。 ( 5 ) 来源计划管理功能 对来源计划能方便地进行输入、增加、删除、修改、核对、输出、统计,并 为市中招办向社会公布本年度招生计划提供清样。 1 1 3 投档子系统 投档子系统包括如下5 项基本功能: ( 1 ) 投档条件设置功能 ( 2 ) 阶段信息设置功能 ( 3 ) 阶段投档设置功能 ( 4 ) 投档恢复功能 ( 5 ) 录取审核功能 1 1 4 客户端子系统 客户端子系统,是为高级中等学校完成网上远程录取工作设计的一个专用软 件。该子系统主要分为三种类型,适用于不同的招生单位,包括学校客户端,区 招办客户端和郊县客户端。 第一章高级中等学校网上招生系统简介 1 1 a 1 学校客户端主要功能 学校客户端的主要功能和结构如图1 - 2 所示。 1 1 4 2 区招办客户端 图1 - 2 系统功能层次图 区招办客户端的功能是学校客户端功能集合的子集,主要包括: 数据处理:阅档处理、审核意见浏览。 网络功能:投档单下载、录取结果下载、审核意见下载。 投档统计;投档统计、分数统计。 系统维护:计划库更新、代码库更新、用户登录、系统参数设定 1 1 4 3 郊县客户端 郊县客户端的主要功能有:指定投档单上载、指定投档单录取结果下载和最 终录取结果上载。 1 1 5 数据代理服务子系统 本系统主要负责完成市招办分别与区招办、郊县招办以及学校端的数据代理 服务。系统基于数据传输代理的机制来中介数据流通。这种模式屏蔽了对市招办 数据库服务器的直接访问,使数据安全性从根本上得到保障,同时也减轻了市招 办端服务器的负荷。主要包括如下功能: ( 1 ) 数据的网络传输服务功能 3 第一章高级中等学校网上招生系统简介 ( 2 ) 数据的压缩、解压缩服务功能 ( 3 ) 数据传输的监视、控制( 此功能仅面向市招办) ( 4 ) 数据交互的日志服务 1 1 6 数据检查和统计报表子系统 数据检查和统计报表子系统主要包括:自动投档阶段信息初始化统计、阶段 投档初始化信息统计、录取进度实时信息统计、数据合理性检查信息统计和录检 员意见信息统计等。 1 2 系统网络拓扑结构 根据目前中等学校录取体制,市招办负责招生录取的组织工作,各招生学校 根据制定的生源计划对考生进行录取。因此,“中等学校招生网上录取系统”的 数据库在市招办。 为完成网上录取工作,市招办的网络拓扑结构如图1 4 所示。整个网络划分 成四个部分,一个是市招办内部使用的局域网络,数据库服务器置于其中,外部 对数据库服务的访问只能通过非军事化区进行;另一个是非军事化区,唯一允许 外部用户进行访问的区域;另外就是学校端子系统和区县招办端子系统。安全服 务器放在非军事化区中,对外部来的访闯进行安全监控。 第一章高级中等学校同上招生系统简介 1 3 系统体系结构 朦1 4 系统网络拓莽结 每潮 网上录取系统有三类用户:市招办招生工作人员、学校招生工作人员、与招 生工作相关的其他招生人员。 市招办工作人员是招生工作的主体,他们负责招生工作的组织和管理。主要 工作界面有:基础数据管理与维护、系统功能管理与分配、计划管理、投档管理、 招生录检、信息查询和决策支持等,这些功能界面由招生管理系统提供。 学校招生工作人员是招生工作的服务对象。他们在市招办提供的学生档案中 选择出优秀考生到本校进一步深造,主要工作界面有:考生电子档案的获取和录 取结果提交、电子档案浏览、与市招办的信息交互、信息统计打印、数据导出与 导入等。这些功能界面由学校端系统提供。 其他用户主要是指招生部门的领导和考生,他们需要了解招生工作的流程和 当前情况,这些功能通过w e b 查询服务来提供。 综合上述功能,中招系统的体系结构可以用图1 5 来描述。这是一个典型的 基于中间件的三层体系结构,它很好地满足了招生工作的需要。 第一章高级中等学校网上招生系统简介 第二章中间件技术在中招系统的应用 第二章中间件技术在中招系统的应用 2 1 基于组件的中间件技术 传统的c l i c n t s c r v e r 两层结构,客户端负责发送请求和接收处理结果,大量 的数据操作通过远程数据库访问的方式交给后台数据库服务器完成。这种结构在 信息系统中取得了很大成功。但是,技术上存在着问题,首先,当大量用户同时 访问时,客户端与后台数据库服务器间的数据传输量大且交换频繁,易造成网络 瓶颈;其次,由于数据库服务器要为每个用户的请求提供处理功能,当用户访问 量大时,系统负载过大,性能难于提高,成为系统扩展的瓶颈:再次,系统对用 户事务处理的变化的适应能力的扩展能力有限,当访问数据量增大或者事务处理 变得复杂时,系统灵活性差。针对以上两层c l i e n t s e r v e r 结构的问题和不足,提 出了一种三层结构。即在客户端和服务器之间增加一个应用服务器层,把客户端 需要处理的一些业务逻辑及数据库的一些事务处理转移到中间层上,它使得这种 三层结构能更好地应用资源,极度简化客户端的管理和使用。目前,三层模 型也存在弊端,即随着信息系统扩展,当应用服务器发生变更时,要作的改动 将非常大,这非常不利于系统升级管理。要使应用服务器层适应多变的需求,同 时降低应用客户端的复杂性,保证系统快速升级和应用的高性能,必须提供一套 灵活的、可适应于不同通信服务和应用要求的解决方案,我们认为建立基于组件 结构的中间件是一理想的方案。 2 1 i 基于组件的中间件模型 中间件技术是支持t h r e e - t i e r 结构的一层软件,它位于业务应用层和具有异 构平台和协议网络层之间,消除业务应用对于特定环境( 包括不同的操作系统、 硬件平台、通信协议) 的依赖“1 。早期的中间件提供对于三层结构的支持仅仅 是通过对于高层通信协议的提取,如t c p i ps o c k e t ,通过这种提取,应用开发 者使用高层的应用接口屏蔽底层通信协议接口的巨大的差异。为适应开放的分布 环境下系统的复杂应用,中间件不仅应提供一套跨越多种操作平台应用接口和一 致的编程模型,而且还应在更高层次提取,以提供一种被广泛接受的分布式计算 的服务。随着面向对象编程语言和工具的发展、组件标准的制定,中间件的每项 服务可作为一个组件来实现,再将这些组件包装成为一个应用服务器或组件服务 器”。 基于功能组件的通用应用服务器的功能由应用服务器和事务服务器、数据库 7 第二章中间件技术在中招系统的应用 和其他技术共同完成。它能够适应用户和事务量的激增,使系统具有可扩展性。 表现在;独立于硬件平台的议案可以快速实施升级;提高通信效率,在分布环境 中,通过会话管理可以解决通信开销中的瓶颈问题;通过负载均衡来实现多服务 器系统中的访问控制;通过连接管理来改善应用服务器和不同数据源的通信。服 务管理用以确保一组服务组件应用的完整性和正确性。与多数数据源的通信机制 提高了系统的适应性,使系统独立于硬件平台、操作系统和实现语言。可恢复性 使系统能在硬件、网络、软件、分布式事务失败时,恢复到系统的前一状态。 组件模型建立的基础是组件标准的制定,现在最常用的标准有三种: ( 1 ) o m g ( 对象管理组织) 制定的公共对象请求代理结构c o r b a ( c o m m o n o 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 2 1 、 注册、数据库、通信和出错处理等方面的问题”1 。和对象管理体系结构( o m a ) 定义的其他对象服务相结合,c o r b a 成为支持分布式系统中对象技术的中间件 设旅。c o r b a 的对象请求代理( o r b ) 作为转发消息的中间件,实现了对象问 的无缝集成和互操作。当前已有许多符合c o r b a 的o r b 产品,如o r b i x 、n e o 、 v i s i b r o k c r 、p o w c r b r o k c r 、s m a l l t a l k b r o k c r 、s o m d s o m 、d a i s 、n o n s t o p 等。 ( 2 ) 微软公司开发制定的o l e d c o m :o l e 支持对象连接嵌入,其初旨是 解决复合文档问题。它为组件对象的互操作提供了基础支持。随后,发展的组件 对象模型c o m 定义了底层对象的通信机制,但它只局限于单机范围内使用。 d c o m 是开发的分布式组件对象模型,支持分布式系统中的面向对象技术”。 与c o r b a 相比,d c o m 有三点不足。首先,它由微软单一开发、定义并控制, 大大限制了d c o m 使用者的选择范围:其次,d c o m 缺乏众多的平台支持,极 大程度地制约了代码的可重用性和d c o m 应用的可扩展性。 ( 3 ) s u n 公司提出的基于j a v a 的组件模型j a v a , b e a n s :j a v a b e a n s 采用纯j a v a 编写,独立于平台,具有良好的互操作性”。b e a n 可以是可视化组件,也可以 是实现一些基础性工作的非可视对象。在网络范围内,j a v a b e a n s 原先主要采用 j a v a r m l ( j a v ar e m o t em e t h o di n v o c a t i o n ) 进行组件间通信,应用的客户端和服 务器都是参照分布式系统接口实现的,而分布式系统接口能被自动、透明地从客 户端传送到服务器端。效果上,r m i 提供了类似c o ;a 的o r b 的功能。j a v a b e a n 组件通过j d b c 访问数据库,通过j a v ao r b 相互通信。j a v a b e a t l 的这些技术, 保证了由众多组件参与运算的事务的数据完整性。 2 1 2 中招系统数据代理中间件的实现 中招系统是一个大型信息应用系统,是一个典型的c l i e n t s e r v e r 结构。在整 个网上招生录取过程中,物理位置上广泛分布的各个招生点,需要通过网络不断 8 第二章中间件技术在中招系统的应用 地从市招办下载报考本校的考生信息和上载学校录取结果,并且对关心的各种信 息进行查询一实现异地录取; 系统利用中间件的思想和技术,在数据代理应用服务器上采用了以下组件结 构,实现了事务管理控制、异构数据库中数据存储、数据库的连接控制和安全控 制。 刊状态萋控服 i 安全服务l 吨 网 l1 薹 l 络 乏多 监 刊数薯囊羹接h 耋囊囊l 一i 听 i 服 务 l 刊事务处理模块l 异构数据库 管理 一 图2 - 1 高级中等学校远程招生系统服务器中间件结构 2 1 3 数据库连接管理 在网上招生录取系统中,虽然大量用户访问信息的时间相对集中,信息传输 具有突发性。但是,一旦用户建立了与相应数据库的连接,客户端进行处理时, 它与数据库的连接通常是空闲的。如果能够充分利用这些时间,使得这些连接能 够为其他用户提供服务,那么,就能大大提高同时服务的用户数。为此,系统设 计了数据库连接管理器,存放逻辑数据库名与真实物理数据库地址的对应关系, 对应用所建立的数据库连接进行集中管理。数据库连接池管理与物理数据库的连 接,当需要分配连接时从中分配一个连接,当释放连接时则将连接释放到连接池 中。实现操作步骤如下:管理器首先建立一个数据库连接池,并建立相应的 数据库连接信号量,当一个用户通过系统提供给它的逻辑数据库名建立提出服务 请求连接时,管理器首先查询数据库连接池中是否存在可以使用的数据库连接, 如果有则分配给请求用户进行实际的数据库操作。若当前不存在符合条件的物理 连接就新建一个,通过分配的物理连接与数据库服务器通信。与此同时管理线程 定期在后台运行,检查物理连接的使用状态,若某个物理连接已长时间未用( 超 时) ,则断开连接以释放资源。当客户访问请求发生拥塞的时候,系统利用负载 平衡功能对负载进行转移、分配等操作,以恢复系统的整体性能。 9 第二章中间件技术在中招系统的应用 2 1 4 网络监控服务 服务器监控程序主要监听t c p 层的特定端口,等待客户的连接,每当接到 一个客户的访问请求时就相应产生出一个独立的线程对访问进行处理,利用事先 和客户端应用程序已经建立起来的通信协议进行通信“1 。每个独立的访问客户 对应于系统的一个独立的线程,该线程作为一个独立的访问实体向数据库连接管 理器提出数据库访问请求。数据库连接管理器直接为访问线程服务,并负责访问 线程的冲突解决和访问队列的管理。 2 1 5 事务处理组件 事务处理组件负责对访问服务进行相应的事务处理。当服务器与客户端建立 了网络连接以后,通过特定的通信协议分析客户访问请求,对不同的服务请求调 用相应的事务处理模块,并把事务处理的控制权转到相应的事务处理程序。事务 是数据库对外服务的基本单位。一个客户在单个事务内必须完全独占一个物理连 接,此时不能与其他用户共享物理连接。在事务结束时,如果没有活动的s q l 语句,则该客户在该物理连接上已经没有特殊的状态资源了。处于这种状态下的 客户相互之间可以共享物理连接,基于事务处理的特点,对数据库物理连接的管 理就在事务的开始,终止阶段进行。在事务开始时,需要分配物理数据库连接; 在事务终止时,则释放物理数据库连接。 2 1 6 状态监控组件 负责对控制系统出错后进行处理。当系统的硬件、网络、软件、分布式事务 失败时恢复到系统某个状态,并释放所占用的资源。失败的线程不会影响服务线 程对其他客户的响应。 2 1 7 安全服务组件 负责实现学校端和市招办代理服务器之间数据交流的安全。主要完成以下几 个功能: ( 1 ) 远程客户身份论证:为合法的远程客户建立自己的数据安全传输通道, 同时拒绝任何非法用户的请求。 ( 2 ) 系统访问权限控制:要能够在网上安全地管理各个远程学校端用户的 权限,使各个学校的数据只能被这个学校中具有相应权限的招生人员访问。 ( 3 ) 数据传输的加密和解密:网上所有的数据都必须使用加密传输,以保 证远程用户得到的数据的可靠、完整并且具有不可否认的特性。 ( 4 ) 重点事件的审计:对所有网络上的重要操作具有日志功能,供具有某 1 0 第二章中间件技术在中招系统的应用 种权限的用户查看。 在以上的结构中,安全管理处于数据库服务器与广域网络的中问,广域网上 的用户不能够直接与数据库连接,它隔离了数据库与广域网络的直接联系,避免 了把数据库服务器暴露在广域网络中间,而且在数据流入或流出数据库服务器的 时候对数据进行加密、解密、检验和验证数据的合法性,保证招办端的数据只被 合适的用户访问,同时也要保证学校端的正当数据请求能够得到响应。 在高级中等学校招生系统中,将这些组件包装成为一个应用服务器实现数据 代理子系统。 2 2 数据代理子系统的设计 2 2 1 数据代理服务概述 中等学校网上招生系统是一个基于t c p i p 具有典型的c l i e n t s e r v e r 结构的 应用系统,市招办就是一个s e r v e r ,各个学校就是一个c l i e n t 。s e r v e r 向c l i e n t 提供考生的电子档案,c l i e n t 对考生进行录取并将录取结果提交给s e r v e r 审核。 电子档案目前是有两部分组成:一是通过指定的标准代码,进行o m r 识别直接 进入数据库的数字化信息:二是将考生的报名表和体检表通过扫描方式形成图形 文件进入数据库的图文信息。数字化信息除了能够供招办方阅览外,还可以提供 很多基于主题的查询和统计功能。图文信息可以提供诸如体检意见、履历表和考 生相片等等在目前量化比较困难的信息。 整个招生系统的远程录取子系统的总体结构图如下: 图2 - 2 远程录取子系统总体结构图 由总体结构图可以看出,整个招生系统的远程录取子系统有三个部分组成:服务 第二章中间件技术在中招系统的应用 器端的应用代理服务器、网络传输子系统和客户端学校招生子系统。 由服务器端的应用代理服务和网络传输系统组成数据代理子系统,具体实 现: 应用代理服务和网络传输系统的服务器端安装在市招办方的应用服务器上, 为远程学校的客户应用程序提供访问数据库的数据代理服务,可以在市招办方设 多个应用服务器,以满足大量远程用户的并发请求。 在系统运行的过程中,应用代理服务应用数据库提供的接口,完成远程招生 中需要和数据库进行的操作,并为网络传输子系统提供数据库操作接口。在实际 的应用中,应用代理服务为传输子系统提供的数据操作接口封装在一个d e l p h i 的u n i t 文件中,网络传输子系统引用这个接口文件,并在子系统的实现过程中 使用这些接口。 网络传输子系统利用应用代理提供的数据库操作接口,取得学校招生子系统 需要的数据并把数据传输到学校端,或把学校招生子系统的数据操作命令传递给 应用代理服务,让应用代理服务完成真正的数据库操作。网络传输子系统需要给 学校招生子系统提供一组接口,让学校招生子系统方便的进行远程数据操作。网 络传输子系统学校招生子系统提供的接口也是以d e l p h i 的u n i t 文件形式提供 的,和学校端的应用程序一起安装在学校的客户机上。 学校招生子系统利用网络传输子系统提供的函数接口取得招生所需的数据, 并在学校端完成预录、预退、统计分析、报表打印等等工作,最后网络传输子系 统提供的数据库操作接口把这些结果传回市招办的数据库。 2 2 2 数据代理运用的技术 ( 1 ) 数据缓存 数据代理的数据缓存就是基于本地数据的访问,可以提供不通过广域网的访 问途径,提高信息访问的速度;是一种减少网络信息流量,提高信息访问效率的 方法。 ( 2 ) 流套接字 传输控制协议t c p ( t r a n s f e rc o n t r o lp r o t o c 0 1 ) 提供了一种可靠的端对端通信 通道,i n t e r n e t 上的客户机服务器应用程序可以用它来进行通信。套接字( s o c k e t ) 是在网络上运行的两个程序之间的双向通信链路的一个端点。对应于t c p 的套 接字称为流套接字,它是面向连接的。服务器应用程序侦听特定端口,等待来自 客户的连接请求。当一个连接请求到达时,客户与服务器之间建立一条专用连接, 它们就在这条连接上通信。在连接过程中,客户被分配一个本地端口号,并将一 个套接字绑定到这个端口。客户通过向套接字写入信息以及从套接字中读出来自 第二章中间件技术在中招系统的应用 服务器的信息的方式与服务器通信。与此相似,服务器也获得一个新的本地端口 号( 需要新端口号是因为这样服务器就能够在原来的端口上继续侦听连接通信。 服务器也将一个套接字绑定到它的本地端口,并通过读写这个套接字与客户通 信。客户和服务器必须使用相同的协议,也就是说,它们通过套接字来回传输信 息时必须使用相同的语言。 ( 3 ) 多线程 线程是一个程序之中单独的顺序化控制流1 9 | 0 多线程程序设计是指在单个 程序中使用多个线程,这些线程在同一时间并发运行,执行不同的任务。在多线 程程序中,各个线程通常需要共享数据e 1 0 j 。例如,一个线程向文件写入数据, 而同时另一个线程要从这个文件中读数据。当多个线程共享数据时,需要将线程 同步,以达到预期的结果。如果一个程序中有几个并发线程在竞争资源,就必须 运用适当的同步机制来保证公平竞争。如果每个线程对于有限的资源能够有足够 的访问时间来保证合理的进度,这个系统就是公平的。 在数据代理的数据库中间件中,采用为每个客户提供一个服务线程的方式实 现。在数据库中间件中,主要包括四类线程:监听线程、空闲管理线程、状态监 控线程和服务线程。其中监听线程、空闲管理线程以及状态监控线程是服务器中 始终存在的三个线程,服务线程是根据客户的请求而产生和消亡的,其数量不定。 ( 4 ) 多客户共享同一个数据库连接 这种连接方式可以使多个客户共享一个数据库连接,极大地缓解客户数量受 到数据库用户数限制造成的问题。数据库中间件以缓冲池方式管理数据连接,减 轻了建立和断开数据库连接时的开销。 2 2 3 数据代理的数据缓存 数据代理的数据缓存就是基于本地数据的访问,可以提供不通过广域网的访 问途径,提高信息访问的速度。 数据缓存( d a t ac a c h e ) 是一种减少网络信息流量,提高信息访问效率的方 法1 。这种缓存分为两个方面:一是基于客户端的本地库数据缓存;二是基于 服务器的数据缓存。 ( 1 ) 客户端数据缓存 在客户访问端,可以确定一些主要的、不经常改变的信息访问源的数据结构, 并以此为基础设立客户端数据库,对服务器上的数据进行映象“。一个比较典 型的例子是招生系统中考生报名档案库。这个库中数据量很大,但是在招生期间 没有什么改变。所以在录取客户端可以定义一个信息的本地库,如果有对考生档 案数据的查询,则先在本地库上进行的查询。如果结果获取正常,则直接提交给 第二章中问件技术在中招系统的应用 用户;如果无法获取,就向中央控制器提供请求,向用户提供新版本的信息并且 维护本地库。 对于上载数据也可以确定一些本地库。在上载数据中,用户如果要维护的数 据属性是关系中的一部分,那么传递所有的数据是一个浪费资源的方法。比如, 在招生期间,是以投档单为依据处理考生。在众多的数据属性中,只有是否录取 考生这个属性是需要维护的。如果只上载这个表中的主键和这个属性,那么网络 流量可以被大大地减少。 本地数据的初始化有两个方法:一是将数据表从开始通过非网络途径整个维 护到本地,然后在服务器上记录数据的变化。这个方法适合系统中数据量大,而 维护很少的基本数据。例如,可以在招生工作开始前,将报考a 学校的考生档 案存储在光盘中,通过邮寄的方式送达a 学校招生工作人员手。a 学校招生人 员再使用系统将考生数据导入到自己的本地库中。在招生期间就可以减少这部分 数据流量。另外一个方法是在网络流量小的时候,例如晚上,自动地将数据下载 到本地。因为下载数据中纯文本数据占的量很少,但有可能变化比较大。而其他 的如声音、图像等等数据都需要占用大量的网络带宽,所以可以对纯文本不进行 缓存,这样可能进一步提高缓存的利用效率。 ( 2 ) 基于服务器的数据缓存 从中央控制器的观点来看,不同用户需要的信息实际上有很多是重复的,尤 其是基于所有自治系统的统计和分析。比如学校a 的用户想查询全市各个中招 分数分布情况,而学校b 也有这种需求。他们对应的信息操作集合实际上是同 一个集合。即f ( a ) = f ( b ) 。 在实际的查询中,如果不同的用户分别使用同一种信息操作,那么中央控制 器就会向各个自治系统查询信息,造成信息的浪费。在招生系统中,统计信息尤 其如此。招生录取是有一定时限的,所以一段时间信息不会有比较大的变化。所 以就事先制定了统计信息操作集合,也就是需要统计的信息。每隔一个固定的时 限,中央控制器上的服务器端的数据缓存自动地执行这些操作;获取相应统计结 果和查询信息。客户查询时,取得的是缓存在服务器上的信息,和最新的信息有 一个时限的间隔。如果时限无穷短的话,代表客户可以获取最新信息;时限无穷 长的话,代表客户可以获取的信息是初始的原始信息。在应用中可以根据逻辑上 的统计等等信息科学地定义查询频度,在两者之间取得平衡。在招生工作中,每 一个阶段都对应于一定的招生批次,所以,可以在每一批结束的时候更新数据库。 如果用户的查询是实时的,就无法设立相应的缓存。 1 4 第二章中间件技术在中招系统的应用 2 2 4 应用代理服务 由服务端的数据库操作函数库实现应用代理服务,它本身实现是一个动态连 接库。它提供几个预先设计好数据库操作函数( 如:生成学校计划库文件、生成 学校返回信息、生成新生名册等) ,由网络传输控制系统的服务端调用。但是考 虑的应用程序模块化和效率的问题,在网络传输控制系统的服务端维护了数据库 连接,当服务端调用这些数据库操作函数的时候会将已经建立好的数据库连接传 给数据库操作函数。 2 2 5 网络传输控制系统 网络传输控制系统是基于t c p i p ,典型的c l i e n t s e r v e r 结构的应用程序。它 分为网络传输控制系统的客户端和网络传输控制系统服务端两部分。 ( 1 ) 服务端部分 服务端是一个基于t c p i p 的多线程服务程序。它主要给客户端提供录取服 务。它允许客户端的并发的访问,并能并发的处理客户端的请求。它控制客户端 所有要访问的资源。它负责维护和数据库s e r v e r 的数据库连接,并对客户端的请 求调用相应数据库操作函数( 由数据库应用程序提供) 。 ( 2 ) 客户端部分 网络传输控制系统客户端是基于t c

温馨提示

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

评论

0/150

提交评论