(计算机应用技术专业论文)大型工程化信息系统的构建技术.pdf_第1页
(计算机应用技术专业论文)大型工程化信息系统的构建技术.pdf_第2页
(计算机应用技术专业论文)大型工程化信息系统的构建技术.pdf_第3页
(计算机应用技术专业论文)大型工程化信息系统的构建技术.pdf_第4页
(计算机应用技术专业论文)大型工程化信息系统的构建技术.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(计算机应用技术专业论文)大型工程化信息系统的构建技术.pdf.pdf 免费下载

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

文档简介

摘罄 摘要 随蔚网络的进1 步发展,信息网络化也娃得越来越重要。现在各 行箨业的信息化程度都订了突e 狐进的发腱,然而在幽防领域,特别 足炕。童领域,馈息化氍度树对比较落后,术义就是结合圉防基础预研 课题飞行试验与测试工程数捌库系统研究,针对试1 s 领域的特点, 对大型工程数据库的构建和实现技术做一定的研究,并针对课题内容 - i 课题组一起没甜利实现个e 行试验数蛳信息化平台,在此繁础一 :, t 宦点对o r a c l e 平台下人型丁:程数据库耷勾建巾的关键技术做进一步 n 研究。夺史研究内容t 二要彳丁”i 个方l 嘶: 1 钳。对试毪领域,研究大型信息系统的总体构架和丌发平台选 用。在这酆分,首先研究了当藏火型信息系统的n 层结构, 然后针对本系统特点,抛出了木系统的总体构架; 2 数据库没汁技术,“ 干试飞数艄信息髓大,符种信息州的关 系复杂,阂此数拊厍的也没计比般系统复杂,在这 - f i j 分, 首先研究了传统的数掂厍设汁理论,然后针对本系统特点, 在理论结合实际的基础i :,蹬计了试数搬库; 3 构建犬型信息系统r ”的关键技术研究,特别是后台的关键技 术研究,火型信息系统的最终f :能,; 安全性关键取决予币台 的设计,闪此,这部分也是本文矽i 研究的犀点内容。存火操 信息系统小n q 天键技术巾主婴研究了并行性和封锁, i n t e r m e d i a 的应_ f _ | 和数抓廓的调试技术,这些部是本系统。所 川到的重要技术。 在研究这魑内容的搽础l :,水文在义; ,给;了飞行试验j 测试 l 。程数据库( f t & m e d b ) 的部分没汁模j 魁。 荚键训:数 :i i :序nj z 结构试bj j 一眺封锁i n t e r m e d i a 数 i j 库渊试 j t i 1 b 。业人学坝i 。论义 a b s t r a c l 1e s td a t aa o n gw i tho l i rr e s e a r c hg r o u p n lt h is p a p e r 【w j l l i l i a n 1ym a k es tu d yi nt h r e ea s p e c t s 1 o n ea s p e c tis1 :0s tu d yovera ll a r c h i t e c t u r eo f 1 a 1 1 9 e s e a l e ir l f o x + m a t i o n s y s t e l l la n dt h ed e v e i o p m e n t p l a t f 1 r m s i nth iss e c t o r ,r ir s tl vt 0s t u d yt h en - t i e r a r ( h it e c t t lf e0 fc u r r e n t1 a r g e g c a ein f o r m a t i o ns y s t e m t h e n 。t op u tf o r w a r d1h e0 v e r a l 】a r c h i t e c t u r eo f t h js s y s t e l l la c c o r d in gt o it sc h 。r a c t0 r is llc s 2 t h ds e c o n doneisa b o u td a t a b a s ed e s ig n t e e h n o l o g y b e c a l l s et h el a r g e 【jk l a f l tn y ( 1 f 【- 1 g h t te s td a t aa n d c o m p i ic a t e df e l a t i0 1 1 s a m o n gk ij ( 】s0 f 。1 f o r m a t i0 n t h e d a 【a b a s ed e s jg nism ( ) r ed i f 【1 lc t l l tt h t mg e n e r a l ,n ( ! 。l n t h iss e c t o r ,f ir s t lyl 0sl u d ylr l a d il io n a ld al a b a s e d ig nth e o f y , h e n , a c c 。r ( | in g0t h e s y s t e m s c h a f i t e lc l is tc s 【( 1d e s i9 1 1 lh ( 、i 、ijg | 1 t t e s td a t a h a s e b a s e do i l1 1 1 0lh e or - yinc o m b in t “io i lw i th ) i s a e t ic e 3 t 1 1 t ,ih ir d 【) 1 【i - ikt i i ) el l lih 0k e yl 【、ih n 0 1o g ie sr e s e l t i c h n th e a r g os c h le r ic or l l l l i to i s y h le n l ,e s p e c i a l lyi nt h e h a c k g r o e “dp k l t5 ( , 、f i l b 。c h t 】s e h er i n 撞ld e r f 0 1 m ;n e oa n d o ( 。1 1 r1ynth e1 it gl 1 s c leif l f o f i i i l t i 0 1 1 s yst o i l l 婀北t 业人学坝i j 论义a b s t r a c t p iv o t a l lyl j0o nth ob “c k g r o l l n d j e s j g n ,t h jss e c t o ris onp0 f t h ei m p ( 、iin n tc ,n t 。n tskl l l d j e d n1h isp a p e r 1 n th ( 、k o yt o ( 、h t 1 0 lo g ie s n s f j e cl ,is t u d i e dp a r a l l e l i s m 。 b 】( 1 c k 。 i n t 。r t d o d j a sa o p l ic a lio 1 1 , c l a t a b a s ed e b u g g i n g t ( ! ( 。h n 0 1o g ya n d , s oor 1 w h ic ha i oa 1lth ef l l o s t i m o o r t a r l t t e ( hr i oj 【) g i o sa p p lie dir lt h iss y s t 0 1 1 b a s eo nth ea b o v er o s e a r c h ( 二o r l t e n ts ,t h jsp a p e ra 1s og ives 1 p a r t 0 rd e s i g n m o d e s0 f t h e s y s t e l l l ”17 l i g h tt e sla n d m e a s u r e m or l t1 1 n g ii t f 2 0 rd a t a b l s 0( f 7 r m e i ) r ) ” k e y _ o r d s :d a t a b a s e ,n - t ie ra r c h i t e ( :“j r 。,1 a r a l le l is m ,b l o c k , n t e r m e d i a ,d a t a b a s od e i ) t l g g in g ,f l i g h tto s t 阳北 + 业人学坝i 。论奠 站一帝绪论 第一章绪论 i 1 引菁 在当今世界i l 处在数搠库技术最目h 列的是以美、欧、门为代袁的 发达国家。从2 0 世纪6 0 年代丌1 始,美豳j r 始火力发展数据库产j ,在 这一时期,数据库主要集。i 。应刷在科学技术羽j 程领域。2 01l i :纪8 0 年 代数据库产业的发展丌始向商业化过渡,数据库内容也l = | _ i 以科技数据库 为主向以商业、经济、会融数掘瘁为主过渡,确时,各种面向家庭和社 区生活的服务性数拥库也得到迅速发展。欧洲和f 1 本的数据库产业发展 晚于美国,但其发展都比较迅速,日前虽然仍然落后于美国,但已备具 优势。相比我国的数据库产! 业发展较为落后,近年来l i 于国家的火力支 持,也取得了长足的发展,但整个环境和技术与发达国家相比仍自较大 差距。 现在的信息系统逐渐璎求按照以客户为叶| 心的方式建立应刚框架, 爱求和客户进行更广泛、史深入程勺交五:,而| n t e r n e t 的迅猛发展给这一 婴求提供了一个非常便捷的实现途径。w w w 系统和数据库是网络化信 息服务的基础。w e b 能及时和以友好的方式向人们提供大量有用的信息, 似同时需要大量的数据库管理,因此,w e b 和数撕库的结合是w w w 信 息服务技术和分郁式数据库技术发腱的大势所趋。 在数据库系统方面,臼2 0l :i t 纪7 0 年代关系模型提出后,山1 :其突 | 的优点,迅速被商用数据库系统所采用并涌现小许多性能优良的关 系数掂库管理系统。倒如,j 、聚数据瘁系统f o x p r o ,a c c e s s ,p a r a d o x 等,大型数据库系统o r a c i ,e 、d b 2 、 1 n f o r m i x 、s y b a s e 、 s q l s e r v e r 等。各种产s 锇经历了从集 t 剑分彳j ,从 f l 机环境到网络环境, 从支持信息镑列剑蛾机粤务处理( o l t p ) ,再到联封l 分析处理( o l a p ) 的发艇过程,州父系模,娌的支持也逐步完蒋,系统的功能不断增强。关 系数拂;库最初没计为毖j - 卜 9 l 终端力式的人,性机f :的应用,其应用范围 较为仃【:【:! ,鼬肴窖户机j 1 是务器方流行夺 成川i 柚客r 一机方的分解,关 系数掘厍义经历j - 客户机服务器时代,许扶得了饭人的发腱。随着 i n t e r n e t 应门j f i q 酱及,j :i n t e r n e ti :信息资源的复杂性和不规范性,关 j ) q 北t 业人学侦f 论文笫一带绪论 系数据库作出了一些适应性凋整如增加数据库的面向对象成分以增加 处理多种复杂数据类型的能力,增加各种| 1 叫件以扩展基于i n t e r n e t 应 用能力等。此时关系数据库的基于i n t e r n e t 应川的模式典型表现为一种 三层或四层的多层结构。在这种多层结构体系f ,关系数据库解决了数 据库的i n t e r n e t 应用的方法问题。而且经过了多年的发展,关系数据库 在事务处理、数值计算方面具有强大的能力并已被证实。因此,关系数 据模型仍然被大多数数据库管理系统采用。 1 2 研究背景及意义 在支持信息社会的三大支柱产业信息技术、计算机科学和通信 技术中,信息技术是核心技术。在信息资源中,数据库无疑起列举足轻 道的作用。自2 01 垃纪九十年代以来,互联网技术蓬勃发展,特别是近几 年,w o r l dw i d ew e b ( 万维网) 更是进入千家万户,渗入到各行各业。 网络用户上网获取信息,公司上网发布信息,在网上进行交易等等,这 些都离不丌数据库的支持,所以,网络技术迅猛发展的同时也使得信息 变得同益重要,因此数掘库技术也变得备受关注。现在数据库已经深入 到各行各业,尤其在媒体、舍融、交通、商业等领域得到了广泛应用, ,t 发适合网络应用的信息系统也成为近年束的热点之一。 在国防领域,特别是航空技术领域,信息化进程也在迅速加快,本 论文准备结合国防基础预研课题飞行试验与测试工程数掘库系统研 究,对o r a c l e 平台下大型1 :程数据库的构建和实现技术进行一定的 研究,并针埘课题内容与课题组一起没计和实现了飞行试验数据库系统: f 在此基础上,重点对o r a c l e 数据库平台下,大型工程数据库的构建 技术进行了深入的研究。 飞行试验与测试1 1 + 程数据库系统的研究日的就是充分利用现代计算 机及其网络应用技术和层次关系数掘库的概念和理沦,收集、管理飞 j n 式验过程中所产生的飞行试验数据和技术资料,建立十| j 应试验对象( 飞 机或相关产一铺) 的飞行试验数槲及州关测试没备数据库管理和应系统。 e 行试验不仅仪足对某4 航卒产i 讯晌简啦定) 钭或龄定试验,它是航空技 术不断发腱和摊l :、“的必桥弘段。航审利研人_ ! ,3 通过刘历史飞行试验资料、 信息和技术搬街n 0 深入粘蹦、分析、综合。j 研究,既町以扩展e 行试验 旧北t 业人学帧1 1 论文 第一帝绪论 数据的应用前景,同时也为飞机设计一、系统设备以及相应产品的改进和 玫型提供了宝贵的第予试验数据。进步还呵以利用试飞数据开展培 训飞行员的模拟训练、仿真飞行研究、匕行试验预先研究、以及专项课 题研究参考等等,并降低飞机试飞的起落架次,也为新一代航空产品的 飞行试验提供借鉴和经验,缩短飞行试验的周期。因此,丌展飞行试验 与测试工程数据库系统研究,建立一个应朋方便、迅速、灵活的飞行试 验与测试工程数据库及其应用平台是卜分迫切和必要的。 我们知道,传统的网络数据库应用基本l 都是基于客户服务器 ( c l i e n t s e l w e r ) 方式的。在这种模式下,客户端需要安装许多集成了商 、世规则的应用程序,然后再通过网络同远程服务器交换数掘。这样一_ 来, 一方面可能会造成网络上有大量数据在传输,从而引起网络瓶颈或网络 m 塞:另一方面,客户端也会变得越来越“胖”,进_ 丽不堪重负。 而w e b 数据库的引入,则为我们带来一个全新的开发理念:三层( 或 多层) 架构模式。在这种模式下,客户端位于最上层,仅需安装用户界 而软件( 如w e b 浏览器) 用于交互处理;数据部分被放置在最底层的数 掘库服务器中;而大量的商业规则被封装起来存放至中日j 层一逻辑层。 这种架构的优点在于将用,o 界面同应用逻辑分离,而数据和计算规则也 一l 丁位于不同的节点| = ,使负载得以均衡化,从而有效地提高了系统的响 应速度。另外一点,它使得程序的:,r 发周期大大缩短,程序员也不必再 象以前那样为安装程序而四处奔波了。而在大型网络数据库中,只有 w e b 服务器和b 端,尚刁i 能满足用户要求和数据库管理的需要,因此, 难大型网络数据库中一般采用c s 、b s 混合结构。 目前,网络数掘库已广泛应用于各行备业,使蛊贵的数掘信息得到 更有效的应用,l 而在国防领域,飞行试验和测试数据更加宝贵,安全性 尤为重要。所以,研究和,i :发适合) :刚络应j ;| :j 的飞行试验和测试系统数 据库具有明显的现实意义。 p q 北1 :业人学缁! i 。论文聃一学人型试飞数据库系统总体构梨 第二章大型试飞数据库系统总体构架 本章将根据当前火溅: :程数掘库的构架方案,结合当前技术发展情 况和本系统飞行试验与测试工程数掘库( f t & m e d b ) 的特点,给出系 统的总体结构设计,根扪总体结构,选择合适的丌发平台,并在总体结 构和选用的丌发平台上,给出系统的整体工作流程。另外,本章最后还 介绍了在系统整体结构设计中对整个系统监控和安全方面的初步没汁。 2 1 系统总体结构 本项目飞行试验与测试工程数据库( f t & m e d b ) 有特定的应用背 景。根据用户需求,首先,使用本系统的用户分为两大类:试飞院外用 ( 一般用户) 和试飞院内用户( 管理用,o ) 。这两类用户之问的区别很 大,院内用户可以对数据库系统拥有渎权限、写权限和修改权限,除了 证常的系统数据访问外,还可以配置、管理和维护整个系统。这些用户 的权限比较高,只限于本院内授权用户,而且对这些用户应该比一般用 户具有更好的性能和安全性。当然,这罩是在用户群体的基础上来讨论 权限的。具体到某个用户,他所能够进行的操作必须根据被授予的权 限而定。而院外用户,只具有读权限,并且只能对数据库系统内的有限 资源进行访问。其次,系统对数据库资源的控制非常严格。每一个用户 能够访问的系统资源各不相同,而n 难以使刷角色来划分,特别是对一 般用户,要求对其资源访问控制达到行级。逃步,系统中的用户具有 分散性。数据库系统的一般用户应司以通过i n t e r n e t 网络来进行访 l l l 。这就决定了一般用户在地理j 二可以是分散的,没有一个可管理的确 定范围。最后,系统中的管理用t 和一般用户郁可能需要通过网络下载 火量的试飞数据,而且管理用,1 还能够专人精的试乜数据。这就要求 系统牲能稳定可靠,并且在重负载下有应具 f 良好的性能。 根据本系统的用广- 需求和应川特点,结合:丽计算机领域内相关技 术的发展情况,我们进行了系统构架力案和整体设计。经过对系统的分 静我们决定采刷b s ;手c s 混合维构术实胤整个数据库系统。使用这 利r 混合结构,1 ,_ 以使系统能够更适心j t 的1 i 川类型,方便不同朋广一的 使蹦要求,1 ml i 系统的安装和维护也比较力便。系统的结构示意图见图 阿北t 业人学坝i 论文 第一章人型试飞数据库系统总体构架 b r o w s e fs e r v e r 1仁胡,f = 可 ”“ 兰三k l 么言盖氦 一广= = = = ii l c l i e n t 监主 o 幽l 总体结构示意i 划 在上图的b s 、c s 的混合结构中,可以清楚地看到,对于b s 结构 足山三层组成,即浏览层、应用逻辑层和数掘源层。在b 端,用户只能 对数据库系统迸行一般性质的访问,通过在数据库和应用服务器进行两 绂权限控制,使得b 端用户只能够在权限允许的条件下,访问适当的数 据资源,而且能够被良好地监控:由于b 端用,将通过浏览器访问数据, 因此,b 端用户可以广泛地分敞在网络之卜。上述b 端的这两条特点正 是符合用户需求中对一般用户的要求,因此在系统整体设计中将一般用 j 、放在b 端,它们将通过b r o w s e r 登录进行读取访问,如登录、浏览 和下载等操作。对于管理型操作来说,它们的执行首都是院内的用户( 管 理员和操作受) ,属于局域嗣内部用广。这些用户职责是维护和管理接个 数据库系统的诈常运行。闪为这些操作会涉及剑1 些数据库安全性问题, j 缸且是b s 结构难以解决的,而传统的c s 结构恰恰在这方面有良好的 性能,所以我们采用了c s 这种紧槲合结构,c 端也就成为系统的管理 端。 采用b s 结构,荫先简化了客,o 端,川户1 i 需要安装额外的客户应 刚霹t ! 序,只需要订+ 个通j 1 】的嘲负浏览器就t t j 以通过嘲络访问本系统。 其次,简化了系统的维护币 发。闪为,j 入了j 畦川逻辑层,所有的_ k 务 应_ f 1 逻辑都可以放存这层,填订仪商的哭活性和t 可复用性。j 需要在 暇北丁业人学坝i 论文筇二常人型试飞数据库系统总体构架 中间层进行修改,就可以完成整个系统的 级和维护。再次,它使得用 户的操作变得简单,不需要进行额外的培l l 米熟悉本系统的操作。最后, 它非常适合网上进行信息发布。而采用c s 结构,除了能够增强系统的 安全性以外还可以给用户提供强大的系统管理界面和丰富的数据库管 理手段,使得维护系统的1 :作变得更加l 简i 社、”,靠。 我们在充分考虑用户的类型,用户的区域性和用户所执行的操作类 别特点的基础t ,把整个系统设i 十为b s 和c s 相结合的结构。两种结 构发挥各自的特点,相辅相成,共同组成一个完整的数据库系统。 2 2 系统技术平台选用以及整体工作流程 在平台选用中,首先要确定数据库平台,根据数据库平台的特点选 j f j 其它平台。目前,适合大型数据库系统的平台比较多,如o r a c l e 、 d b 2 、i n f o r m i x 、s y b a s e 、s q ls e r v e r 等,其中o r a c l e 在数据库 领域具有一定的领先地位。o r a c l e 在数据库中集成了j a v av m ,可以用 j a v a 编写存储过程、函数和触发器,支持s q l j ,内嵌了j d b c 。o r a c l e g i i l 司时还提供对e n t e r p r i s ej a v ab e a n s 的支持,并支持基于c o r b a 通信 标准i i o p 的通信能力。这些都绘i 删络数掘库的丌发带来了极大的方便。 问时,o r a c l e 平台还具有以下优点:兼容性。o r a c l e 产品采用标准s q l , 并经过美国国家标准技术所( n i s t ) 测试。1 ji b ms q l d s ,d b 2 , 1 n g r e s ,i d m s ,r 等兼容。可移植性。o r a c l e 的产品可运行于很宽范 闱的硬件与操作系统平台一【j 。可以安装在7 0 种以上不同的大、巾、小型 机e ;可在v m s 、d o s 、u n i x 、w i n d o w s 等多种操作系统f = 1 _ = 作。 可联结性。能! j 多种通讯l 稠络相连,支持箨种协议( t c p i p 、d e c n e t 、 l u 6 2 等) 。高生产率:提供了多种丌发r 牍,能极大的方便用户进行 进一步的丌发。鉴j 二以上考虑,在j 试b 院充分沟通的基础上,本系统 选用了o r a c l e 8 i 数据库、f 台。在此旗础i ? 选j 了+ 蝗其它平台:i 具。系 统的平台选用如阁2 所永。 、 】婀北t 业人学1 4 ;论文 筘一:带人型试飞数据库系统总体构架 幽2 系统技术技术平台 一、 、 在b r o w s e r 端,使用当前流行的浏览器:i e 或n e t s c a p e ;在业务逻 辑堪,采用w e bs e r v e r 和a p ps e r v e r 的组合。时者处理来自b r o w s e r 的 连接,后者对这些连接请求进行服务,完成所有的业务逻辑和其他的管 理功能。w e bs e r v e r 采用了以稳定、可靠而著称的a p a c h e 2 0 ,a p ps e r v e r 采用同样著名的t o m c a t 4 0 ,并使用最新版本的j d k i 4 来进行丌发系统 的业务逻辑。d bs e r v e r 使用o r a e l e s i ,c l i e n t 端使用了p o w e r b u i l d e r 8 0 。 这嵝技术保证了整个系统能够具有较商的性能和可靠牲。 在选用的技术平台下,结合用户的具体应用逻辑,系统各部分的工 作数据流图如下圈3 所示。 州北t 业人学坝i 论文 ! ;i 一币人型试飞数据库系统总体构架 蚓3系统技术平台上个部分j 。4 1 :数据流图 b s 和c s 虽然面向的探作和1 i 户刁i m 。但是内含的逻辑是统一的, 嬷者完全可以采用, | ;j 嗣鹩逻辑柬实现。c f i e m 端采用传统韵紧耦合结构, 所行的应用逻辑和业务逻辑都放弧了c l i e n t 端,而b s 则把这一部分分 离放到了应刚服务器( a p ps e r v e r ) :。卜i 我们就以b s 为例,具体 进行分析。 ( 1 ) :川p 存b r o w s e r 端,阳i _ i 】9 络服务器( w e bs e r v e r ) 发出请 求,来进行系统访问: 陌北t 业人学坝l 论文 笫一章人型试飞数捌库系统总体构梨 ( 2 ) :w e bs e r v e r 和用户建立连接,并把此请求提交给a p p s e r v e r 。出a p ps e r v e r 啭面靛控锚模块进行处理: ( 3 ) :控制模块是山s e r v l e t 实现的和c g i 完成的功能一样, 把不同的请求分发到不同的功能模块 二; ( 4 ) :荏这掣功能模块是采用j a v a b e a n 技术实现,所有的业务逻 辑控制、权限控制等都是山它负责,它根搬请求去连接缓冲池,从中取 得一个连接; ( 5 ) :连接缓冲池访问数据库服务器,清求读取数据: ( 6 ) :数掘库服务器把数掘返鲫到连接缓冲池; ( 7 ) :数据缓冲池把数据发送到功能模块; ( 8 ) :控制模块向显示模块发出指令,准备相应的显示框架; ( 9 ) :功能模块这时候已经从数据库醪面得到了数据。并将这些数 据提交给显示模块; ( 1 0 ) :显示模块这时候知道显示框架和显示的内容,它把两者组成 一个标准的t i t m l 页面,蚓送给w e bs e r v e r ,作为请求的相应; ( 1 1 ) :w e b 、q e r v e r 把最终的结果回送给发出请求的b r o w s e r 端,作 为此次操作的响应。 在a p ps e r v e r 中,采用了m v c 结构【! | ;j 模型视图一控制器,这 样把功能模块、显示模块和控制模块分离,也就是波分离了功能逻辑、 表示逻辑和控制逻辑,提高了系统的可复用性。这也是曰i j i 计算机软件 :c 程中非常先进的技术。 2 ,3 系统中其它相关设计 由于整个系统是搭建在一个恻络平白之1 i ,涉及多个服务器的协同 工作。由于网络状况的不确定州:,我们有必要提供个s y s t e m m o n i t o r , 来熄测整个系统是否i r 常i :作。我们把这个功能放在了a p ps e r v e r 巾。 s y s t e mm o n i t o r 卜耍的目的是监测彩台服务器是_ i i i 被扁动,是甭能够桐 胁- 凋地完成川户的消求。如f 劁4 所示。 7 j q 北t 业人学顾i j 论文第一带人型试飞数捌库系统总俸构柴 i j :j 。 r kj s ,s c e mm o 州t o r | 酗4s y s t e mm o n i t o r s y s t e mm o n i t o r 先向w e bs e r v e r 发出请求,如果没有响应则说明, w e bs e r v e r 网络不可达或者w e bs e r v e r 故障,给管理员发出提示: s y s t e m m o n i t o r 接着向d bs e r v e r 发出清求,如果没有响应刚说明, d bs e r v e r 网络不可达或者d bs e r v e r 故障,给管理员发出提示: s y s t e mm o n i t o r 通过w e bs e r v e r 的统一接口,依靠a p ps e r v e r 的逻 辑控制去访问d bs e r v e r ,如果没有响应则说明,a p ps e r v e r 网络不可 达或者a p ps e r v e r 故障,给管理员发出提示。 当然,仅仅依靠s y s t e mm o n i t o r 还不够,我们还需要为系统的服务 质量做出保证。也就是蜕,在现有的软硬件条件下,为了能够保证用户 收剑高质量的服务,我们必须提供一个功能,当系统的网络负载达到了 一定程度的时候,系统会自动的拒绝后来者的登录请求。经过对系统的 分析,我们知道,系统的瓶颈之一是用户在下载数据的时候要在一定时 m 内占用大量的网络带宽。因此,我们在数据q - 成模块坦面,可以对生 成的内容数据进行计算,i 司为框架产生的数据可f 载数据相比较,是 非常少的,所以在计算流量的时候,只考虑内容数据,而忽略框架产生 的数据。以此为依据,来和系统的预没网 ! 流量阀值进行比较,以达到 保证服务质量的的。 在w 曲s e r v e r 端,因为所有的连接都是从这早进出的。是数据进出 的唯一通道。实时地了解w e bs e v e r 的j 一件负载也是有意义的。所以, 我们在c l i e n t 端为管理受提供一个梭食w e bs e r v e r t 作状念的接口,让 钙:理员能够观察w e bs e r v e r 的负载情况,以及给m 所有流经w e bs e r v e r 的数据和请求的统计信息。 2 4 本章小结 本章刈e 行试验1 j 测试一r 矛t 数川库( f i & m e d b ) 系统的整休构架 ,【i 北t 业人学城i 论文 铺一章人掣试飞数据库系统总体构架 作出了比较详细的设计,对丌发平台也做了选择,并在所设计的结构 和平台上对系统: :作流程做了描述。 b 予篇幅有限,在设计中,没有充 分比较各种设计方案和各种平台。对系统监控和安全方面的设计也只是 傲了简单的介绍,因为它不是本文趣玎究的承点。, 陌北1 业人学坝i j 论奠雄= 二常数据库服务器堂l ! 构殴计 第三章数据库服务器结构设计 本章将在讨论数据库服务器结构的基础 :,根据本系统结构设计方 案,给出在本系统中,数掘库服务器的i 作模式没汁给h j 在所设i t 的 服务器工作模式下,服务器与客户端的连接方式,并简单介绍了本系统 所选用的应用服务器结构。 3 1 服务器模式设计 在数据库服务器工作模式的设计过程中,必然要以所选用的数据库 系统平台的体系结构为依掘。数掘库系统的体系结构主要包括文件结构、 内存结构以及进程或线程结构。其中,与数据库服务器工作模式设计密 切相关的是内存结构和进程或线程结构。因此本节将茸先简单地讨论一 下数据库服务器的内存结构以及进程或线程结构,然后给出本系统服务 器的工作模式设计, 3 1 1 服务器内存以及进程或线程结构 本系统后台数据库选用o r a c l e 数掘库平台。o r a c l e 是一个客户服务 器数据库,它的数据库服务器的运行独立于访问它的应用程序。服务器 i 艋听和接收柬自客户的请求,并处理这些请求,将结果返回给客户。传 统上的o r a c l e 应用程序都是两层的应用程序,但w e b 的出现和越来越强 凋在i n t e r n e t 访问信息,现在越来越多的应用程序采用三层模式结构实 现。即:在p c 机和服务器之问增加了一个应用服务器。另外,o r a c l e 还是一个可移植的数捌库它可以适应多利操作系统平台,在不同的操 作系统平台上,o r a c l e 的物理实现在4 :同操作系统上看上去是不一样的。 例如,在u n i x 操作系统平台f :,n j 以吞到o r a c l e 实现为许多不同的操 作系统进程,闪为u n i x1 作在多进程晌纂础j :然而在w i n d o w s 操作 系统平台j :,它实现为蚺的线程化进程。尽 :o r a c l e 的物理实现随操 作系统平台的小删而变化,但其体系结构足通川的。 对于服务器内存结构,t 要是州部分:系统令硒( s g a ) 和程序 全局区( p g a ) 。j 一个o r a c l e 实例i j | = 始运 圳j ,它分配了个称为s g a ( 系统全1 , 3 f ) 的火的内存块,这个人f j 内右j 块被实例i c f 勺所有后台进程 两北t 业人学坝i 论文 笫三常数据库服务器结构设计 拭享;每个与实例有关的进程都有它自己私有的内存区,被称之p g a ( 程 序全局区) ,它是个单一的操作系统进稚或线程钓特定内存,它不可以 被系统中其它的进程或线程所访问。s g a 和p g a 的示意图如图5 所示, 共享内存允许后台进程蝴相互迅速地交流,把进程f c l j 通信的开销减少到 了最小,这对提高o r a c l e 数据库效率卜分重要:另外,在内存结构中还 包括用户全局区( u g a ) ,它是与_ f l i l 户会话相关( 会话的状态) 的内存, 它包含于s g a 或p g a 中,这取决于当附数据库的运行模式,若数据库 当前运行模式为m t s ,则u g a 包含于s g a 之中;若数据库当前运行模 式为专用服务器则u g a 包含予p g a 之t h 服务器进群 ,l 客户端 t 系统全局rs g a 鲁 p g ap g a 服务器进样 服务器进群 幽5s g a5 0p g a 示意幽 在数掘库服务器的设计中,对p g a u g a 大小影响最大的因素是会 话参数s o r ta r e as i z e 和s o r ta r e ar e t a i n e ds i z e ( 可以在 初始化参数文件i n i t o r a 中设置) ,这两个参数对于从数据库获取数据的 效率有较大影响,这两个参数是控制在写盘之丽o r a c l e 用来进行数据排 序空问的数量,以圾在排序完成之后将保翻多少内存段。 s o r ta r e as i z e 通常分配在p g a 之 中 ,而 s o r ta r e ar e t a i n e ds i z e 则在u g a 之内。通过查询o r a c l e 中特 殊的v $ 表t 也称动念荆:能挺) 可以对p g a u g a 的大小进行骼托,发现 当前p g a 和u g a 内存的使川状态。另外,l i g a 使用的排序区内存在 使用后是立b 被释放的,l njp g a 使埔的排序内存卸一i 会立即释放,可以 使用包d b m ss e s s i o nl 内过氍f r e eu n u s e dr l l c u l o r y 来强制p g a 缩减。 然而,在犬多数系统t h 这样做一i 仪浪费时州,而n 没有必娶,因为在 两北1 _ 业人学坝l 论,= 【_第三币数据库煅务器鳓构设计 大多数情况下,不必真l f 地把内存返旧给操作系统,在创建实例的时候, 要根据系统的实际内存来分配摊睁隧哟火小。谍作系统会根据当前系统 中内存使用情况进行内存管理。 在o r a c l e 中,每一个实例都拥有个被称为s g a ( s y s t e mg l o b a l a r e a ) 大的内存结构,s g a 是一个大型的、共孛的内存结构,每个o r a c l e 进程部能够访问它。在u n i x 操作系统中。s g a 是一个物理实体,它实 现为共享内存段,可以从操作系统命令行上看到它;在w i n d o w s 操作系 统中。不能象在u n i x 中那样看到s g a ,只能看到分配给进程 o r a c l e e x e 的肉存,丽s g a 是其中的部分。不管在什么平台上, 在o r a c l e 本身之中,都可以看到s g a 的存在。在o r a c l e 中,有一个v $ 表v $ s g a s t a t ,从这个表。”可以金看到s g a 的组成结构。 s g a 是o r a c l e 实例中最重要的内存结构。对s g a 结构大小的设定 对数据库性能有重要影响。s g a 主要山以下几个部分组成:数拚:库高速 缓冲区( d a t a b a s eb u f f e r c a c h e ) ,j a v a 池( j a v ap 0 0 1 ) ,共享池( s h a r e d p 0 0 1 ) 。重做| 二i :f 志缓冲区( r e d ol o gb u f f e r ) ,大池( l a r g ep 0 0 1 ) ,固定 的s g a ( f i x e ds g a ) 。从附录中程序4 的执行结果也可以看到上述结构, 其中d bb l o c kb u f f e r s 反映了数据库高速缓冲区的大小,其余各部分都 足与名称相对应的。s g a 的结构示意图如图6 所示。 s g a 团圈 匦区门匦圈 i 划6s g a 结构示意h 在上西 寸论了o r a c l e 数据库的内存结构之后,下商讨论再简单介绍 fo r a c l e 的进程结构,这魉进程_ f | :w i n d o w s 操作系统中表现为线程, | _ 面都以进程名称讨论。往o r a c l e 实例1 1 _ ;l 订3 类进程,第一类足服务器 进稃( s e r v e r p r o c e s s ) ,这j 如进程基j 客,1 淌的请求来执行工作:第二类 赴后台进程( b a c k g r o u n dp r o c e s s e s ) 这f 进程址佧随精数据库的腑动而 嬲动的,执 j :各种维护t j :作。第一i 类是从弑进辅! ( s l a v ep r o c e s s ) ,这些 旧北t 业人学顺i 论文 第二章数据库服务器结 ! j 设计 进程类似于后台进程,但它们是代表后台进程或服务器进程执行额外工 作的进程。 对于服务器进程,o r a c l e 有两利- 服务器模式,一一种是专用模式,一 种是共享模式。这两种服务器模式卜服务器进程都有相同的作用,就是 处理提交给他们的s q l 。后台进程执行维持数川库运行所需的f 1 常的维 9 1 ,任务,后台进程又分为两类,类是集小的后台进程,另一类足实用 后台进程。集中的后台进程主要有1 1 个:p m o n 一进程监控器;s m o n 一系统监控器;r e c o 一分饥式的数据库恢复进程:c k p t 一检查点进程; d b w n 一数捌库块写入:l g w r 一| 1 志写入进程;a r ( 、n 一归档进程:b s p 一块服务进程( 专用于o p s ) :l m o n 一锁定临控进私! ( 专用于o p s ) : l m d 一锁定管理器守护进程( 专用r fo p s ) :i c k n 锁定进程( 专用于 o p s ) 。实用后台进程是可选的,它们提供的功能并不足n 常运行数据库 所必需的,它主要有三个:s n p n 一快照进程:q m n n 一队列监控进程; j j m n n 一事件监控进程。从属进程书要有两类:i o 从属进程和并行查询 从属进程。 上面讨论的内存以及进程或线程结构对服务器的设计彳r 决定性的作 厢,讨论它主要是为了能够更清楚地论述服务器工作械。设计。但他并 不是本文讨论的重点,因此,不再做进一步深入讨沦。 3 1 2 服务器工作模式设计 在o r a c l e 平台下,数掘库服务器的工作模式铂两种:一种是用服 务器模式:另一种是共享服务器模式。在使朋中,可以将数据库服务器 配置成其中一利t 】:作模式或使h j 两种混合模式。 在专用服务器模式配置下,o r a c l e 将为每个登录者提供一个服务器 进程。因此在这种模式卜,会话年l i 刚服务器表现为一映射的关系, 如圈7 所示。客户进程( 4 i 镑什么程序连接到数槲库) 。将赢接地在如 r c p i p 套节字这样f 内1 些酬络管道h2 j 簟j j j l _ 务器连接,这个服务器 将接收和运行p i 。s q i _ 。和s q l 语们。 j q :l l :, t 业人学顺i 。论义 卿蔓章数据库服务料结构驶计 数据阵实例 数据厍 蝌7 专川暇务器模式客户端连接流释示意幽 在多线程服务器( m t s ) 模式也就是共享服务器模式配置下,用户 髓蒙连接时,在服务器将看不到新建的线程;_ _ “现( 在u n i x 下也看不到新 建的进程出现) 。在这种模式下,o r a c l e 对大批用户使用一个“共事服务 器池”。它允许用户拥有这螳可能由所有事务共享的共事服务器的一小部 分,而不是为每个会话提供个专用服务器,这使得o r a c l e 连接到数据 库的用户可以更多。例如,若服务器在管理1 0 0 0 0 个进程的负载下崩溃, 但在管理1 i ) o 或1 0 0 0 个遴樱是可行的,这样就可以通过共享服务器增加 迮接用户数。 m t s 模式与专用模式之问最火的区别是:在m t s 模式下,连接到 数据库的客户端进程不能和亭服务器进程赢接对话,而在专用模式下, 窖户端进程是能和专用服务器进私直接刘话的。在m t s 模式下客户 端进程不能和共享服务器进程直接对话的原是,共事服务器进程实际 j 足客户端进程所共享的,j ! j i i _ 此,它需耍利对话机制,o r a c l e 使用一 个分配器( d i s p a t c h e r ) 进程( 或 纽进程) 来实现。客户端进程将在网 络 二与分配器进程对话,分配器进程将客户端请求放入s g ar | 的淆求队 列,第个兮1 = j 夸服务器受到这个请求届将处理它,处理完成后, 享服务器将会把响应放胃于嘞应队列t f i 分配器进程瓶控这个队列, 并将之传送给。髯户端。如罔8 所i i 明i t t 业人学坝i m :殳第= = 三章数据库服务 ;鲇粕设计 酗8m t s 服务器模式+ 萍户端连接流料示意蛐 对于丌发人员柬晚,使用m t s 连接和使用专用服务器连接之间是 没有区别的。在本论文中所涉及到的项目中,我们在应用服务器设计中 使用了连接池特性( j 2 e e 连接池) ,并且通过定义合适的连接池火小来 控制并行连接的数量,阏此,对于服务器设计中没有使用服务器的m t s 模式,而是采用专用服务器模式。 3 2 服务器与客户端以及应用服务器的连接 前面已经提到,o r a c l e 是一个客户服务器结构的数据库,它提供了 网络软件n e t 8 把服务器和客户端连接起来。

温馨提示

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

最新文档

评论

0/150

提交评论