




已阅读5页,还剩50页未读, 继续免费阅读
(机械电子工程专业论文)基于internetintranet的工控组态软件web发布系统的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于i n t e r n e t i n t r a n e t 的工控组态软件w e b 发布系统的研究 摘要 本文结合实际应用课题“组态软件的h m i 及w e b 发布”项目,重点探讨该组 态软件的w e b 发布系统。 文献综述部分对组态软件的概况和与w e b 发布相关的基本概念和关键技术做 了概括介绍。自开发控件w e b c t r l 在w e b 发布中不仅起到显示画面的作用,它所 暴露的接i = 1 更是将画面中的图形对象连接到实时数据的重要通道,因此本文着重 对该控件的类结构和动态模型以及它提供给脚本的接口做了详细介绍。在此基础 上,本论文尝试了在综合a s p 技术、a d o 组件、脚本编程和c o m 的前提下,将 自开发控件和i e 浏览器集成在一起,通过对控件暴露的接口进行脚本编程实现对 图形对象的操作,并充分发挥计算机网络的潜能,将i n t e r n e t 技术与工业现场监控 系统结合起来,从而形成一种新的基于浏览器的工业现场实时监控画面的动态更 新。 最后通过一个实例说明在w e b 服务器端,如何借助对w e b c t r l 控件的三级接 口和a d o 组件的脚本编程来实现组态系统的动态实时发布。 关键词:组态软件;w 曲发布;数据访问? 实时数据哆a s 火a c t i v e x 控件 t h er e s e a r c ho nw e b p u b l i s h i n gs y s t e m o f c o n f i g u r a t i o n s o f t w a r eb a s e do ni n t e r n e t | i n t r a n e t a b s t r a c t t h i st h e s i sa s s o c i a t e sw i t ha na p p l i c a t i o ni t e m ”t h eh m ia n dw e b p u b l i s h i n go f c o n f i g u r a t i o ns o f t w a r e ”,a n d1 w i l le s p e c i a l l yd i s c u s st h ew e b p u b l i s h i n gs y s t e mo f t h a tc o n f i g u r a t i o ns o f t w a r e t h ei n t r o d u c t i o np a r tf i r s t l ys u m m a r i e st h eg e n e r a ls i t u a t i o no ft h i sc o n f i g u r a t i o n s o f t w a r e ,a l o n gw i t hs o m eb a s i cc o n c e p t sa n dc r i t i c a lt e c h n o l o g i e sa s s o c i a t ew i t hw e b p u b l i s h i n g w e b c t r lc o n t r o ln o tm e r e l yp l a y sar o l ei ns h o w i n gp i c t u r ei ni e b u ta l s o i t s e x p o s e di n t e r f a c ei st h ei m p o r t a n tc h a n n e lc o n n e c t i n gg r a p ho b j e c t st o r e a l t i m e d a t a s ot h i sa r t i c l ed o e sd e t a i l e di n t r o d u c t i o nt h es t r u c t u r eo ft h ec o n t r o l sc l a s s e s ,a s w e l la sa n di t sd y n a m i cm o d e la n di n t e r f a c et h a to f f e r e dt o s c r i p tl a n g u a g e o nt h e b a s i so fa b o v e - m e n t i o n e di n t r o d u c t i o n ,t h i st h e s i st r i e st os y n t h e s i z ea s p t e c h n o l o g y , a d o ,s c r i p tp r o g r a m m i n ga n dc o m ,a n di n t e g r a t ew e b c t r lc o n t r o la n di eb r o w s e r t o g e t h e r ,s oa st or e a l i z et h es c r i p t sa c t i o no ng r a p ho b j e c t sb yp r o g r a m m i n go ft h e s c r i p tt ot h o s ee x p o s e di n t e r f a c eo fw e b c t r l t h e nc o m b i n e si n t e r n e tt e c h n o l o g ya n d i n d u s t r i a l m o n i t o r i n ga n dc o n t r o ls y s t e mt o g e t h e r ,a n dm a k e st h eb e s to ft h el a t e n t e n e r g yo ft h ec o m p u t e rn e t w o r k ,t h u sc o m e si n t ob e i n gt h ed y n a m i cu p d a t i n go f i n d u s t r i a lm o n i t o r i n g p i c t u r eb a s e do nb r o w s e r t h el a s tc h a p t e rg i v e sa ne x a m p l et oi l l u s t r a t eh o wt or e a l i z ed y n a m i cr e a l t i m e p u b l i s h i n go f t h ec o n f i g u r a t i o ns y s t e m k e y w o r d s :c o n f i g u r a t i o ns o f t w a r e ,w e bp u b l i s h i n g ,d a t aa c c e s s ,r e a l t i m ed a t a b a s e , a sp ,a c t i v e xc o n t r o l 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究 成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已 经发表或撰写过的研究成果,也不包含为获得金蟹王些态生或其他教育机 构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示谢意。 学位论文作者签名 雷淋 签字日期如散月i 日 学位论文版权使用授权书 本学位论文作者完全了解金跫工些盔堂有关保留、使用学位论文的规定, 有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和 借阅。本人授权金壁王些盔堂可以将学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名: 蛮水 导师签名 杠f 3 磷 签字日期:d l n 3 年亨月s 1 日 签字日期:哆年3 月;日 学位论文作者毕业后去向 工作单位: 通讯地址: 。 电话 邮编 致谢 在这里,我首先要对我的导师杜晓荣教授表示我最衷心的感谢。在近三年的 研究生学习期间,杜老师以他严谨认真的治学态度和对学术的孜孜追求深深影响 了我。杜老师对学术问题的独到见解和渊博的知识都源自于多年的勤奋钻研,因 此杜老师对研究课题的敏锐发现和准确把握都是值得我学习的榜样。在杜老师的 悉一t 5 指引下,我对科研工作有了更深一步的认识并深受启发。 从开始做与本论文相关的论文,一直到本论文的完成,杜老师给予了我无私 的指导和帮助。在选题、开题及至完成论文的每一个阶段,杜老师都严格把关, 并在课题的研究思路上给以具有建设性的意见。对论文的审阅也同样耐心细致, 大到论文的框架,小到一个知识点,杜老师都是一样细心批阅纠正。同时杜老师 也是我生活中的老师,他对学生的关心爱护也是为人师表的典范。 感谢合肥工业大学c i m s 研究所王治森老师、韩江老师、何凯老师在我攻读 硕士学位期间,给我的学业上的指导与关心,以及c i m s 所给予我的各方面的关 心和支持。 感谢吴正伟、周蓉、樊文生、石东华、曹哲术等同学给予我的帮助和支持。 感谢合肥工业大学研究生部及机械与汽车学院的老师与领导们对我的帮助和 支持。 课题的研究与论文的撰写也得到家人的大力支持与理解,在此向他们表示感 谢。 最后,再次向我的导师杜晓荣教授表示感谢! 第一章绪论 c i m s 技术的发展促使现代企业的生产逐步向网络化分布式自动化的方向发 展。随着m i s 和c i m s 的普及,以及越来越多的企业通过内部i n t r a n e t 网进行信 息集成和共享,工业现场数据为企业的生产经营决策提供了详实的依据,以优化 生产经营中的各个环节,这些都促进了工业组态软件的应用和发展。因此基于 i n t e r n e t i n t r a n e t 的w e b 发布系统已经成为组态软件的重要组成部分1 3 l 。 本章首先综述组态软件的产生背景、发展、产品及特点、应用前景,然后介 绍本课题中组态系统的图形编辑模块、组态运行模块和w e b 发布模块以及模块问 的关系,并引出w e b 发布模块在整个系统中的作用,阐述了本论文的主要内容及 意义。 1 1 组态软件的产生及应用 1 1 1 组态软件产生的背景 在工业控制技术的不断发展和应用过程中,p c ( 包括工控机) 相比以前的专用系 统具有的优势日趋明显。这些优势主要体现:p c 技术保持了较快的发展速度, 各种相关技术已臻成熟:由p c 构建的工业控制系统具有相对较低的拥有成本: p c 的软件资源和硬件资源丰富,软件之间的互操作性强;基于p c 的控制系 统易于学习和使用,可以容易地得到技术方面的支持。在p c 技术向工业控制领域 的渗透中,组态软件占据着非常特殊而且重要的地位【4 i 。 虽然目前国内对于组态软件还缺乏权威的定义,但可以做一个描述性的定义: 组态软件是使用灵活的组态方式,为用户提供快速构建工业自动控制系统监控功 能的、通用层次的软件工具。组态软件应该能支持各种工控设备和常见的通信协 议,并且通常应提供分布式数据管理和网络功能。对应于原有的h m i ( 人机接口软 件,h u m a nm a c h i n ei n t e r f a c e ) 的概念,组态软件应该是一个使用户能快速建立 自己的h m i 的软件工具或开发环境【5 】。在组态软件出现之前,工控领域的用户通 过手工或委托第三方编写h m i 应用,开发时间长,效率低,可靠性差;或者购买 专用的工控系统,通常是封闭的系统,选择余地小,往往不能满足需求,很难与 外界进行数据交互,升级和增加功能都受到严重的限制。组态软件的出现,把用 户从这些困境中解脱出来,可以利用组态软件的功能,构建一套最适合自己的应 用系统f6 1 。 1 1 2 组态软件的发展 组态软件产品于8 0 年代初出现,并在8 0 年代末期进入我国。但在9 0 年代中 期之前,组态软件在我国的应用并不普及。原因有以下几点:国内用户还缺乏 对组态软件的认识;口在很长时间里,国内用户的软件意识还不强,面对价格不 菲的进口软件( 早期的组态软件多为国外厂家开发) ,很少有用户愿意去购买正版, 甚至在多数项目预算中不包含软件费用;口当时国内的工业自动化和信息技术应 用的水平还不高组态软件提供了对大规模应用、大量数据进行采集、监控、处 理并可以将处理的结果生成管理所需的数据,但这些需求并未完全形成1 6 j 。 随着工业控制系统应用的深入,在面临规模更大、控制更复杂的控制系统时, 人们逐渐意识到原有的上位机编程的开发方式,对项目来说是费时费力、得不偿 失的,同时,m i s 和c i m s 的大量应用,要求工业现场为企业的生产、经营、决策 提供更详细和深入的数据,以便优化企业生产经营中的各个环节。因此,在1 9 9 5 年以后,组态软件在国内的应用逐渐得到了普及。 1 1 3 组态软件的国内外主要产品介绍1 6 l 1 i n t o u c h :w o n d e w a r e 的i n t o u c h 【7 j 软件是最早进入我国的组态软件。在8 0 年代末、9 0 年代初,基于w i n d o w s 3 1 的i n t o u c h 软件曾让我们耳目新,并且 i n t o u c h 提供了丰富的图库。但是,早期的i n t o u c h 软件采用d d e 方式与驱动程序 通信,性能较差,最新的i n t o u c h7 0 版已经完全基于3 2 位的w i n d o w s 平台,并且 提供了o p c 支持。 2 f i x :i n t e l l u l t i o n 8 1 公司以f i x 组态软件起家,1 9 9 5 年被爱默生收购,现在 是爱默生集团的全资子公司,f i x6 x 软件提供工控人员熟悉的概念和操作界面, 并提供完备的驱动程序( 需单独购买) 。i n t e l l u t i o n 将自己最新的产品系列命名 为i f i x 。在i f i x 中,i n t e l l u i t i o n 提供了强大的组态功能,但新版本与以往的6 x 版本并不完全兼容。原有的s c r i p t 语言改为v b a ( v i s u mb a s i cf o ra p p l i c a t i o n ) 并且在内部集成了微软的v b a 开发环境。遗憾的是,i n t e l l u l t i o n 并没有提供6 i 版脚本语言到v b a 的转换工具。在i f i x 中,i n t e l l u l t i o n 的产品与m i c r o s o f t 的操作系统、网络进行了紧密的集成。i n t e l l u l t i o n 也是o p c ( o l ef o rp r o c e s s c o n t r 0 1 ) 组织的发起成员之一。i f i x 的o p c 组件和驱动程序同样需要单独购买。 3 c i t e c h :澳大刹亚c i t 公司的c i t e c h l 9 1 也是较早进入中国市场的产品。 c i t e c h 具有简洁的操作方式,但其操作方式更多的是面向程序员,而不是工控用 户,c i t e c h 提供了类似c 语言的脚本语言进行二次开发,但与i f i x 不同的是, c i t e c h 的脚本语言并非是面向对象的,而是类似于c 语言,这无疑为用户进行二 次开发增加了难度。 4 w i n c c :s i m e n s 的w i n c c ( 1 o j 也是一套完备的组态开发环境,s i m e n s 提供类 c 语言的脚本,包括一个调试环境。w i n c c 内嵌o p c 支持,并可对分布式系统进行组 态。但w i n c c 的结构较复杂,用户最好经过s i m e n s 的培训以掌握w i n c c 的应用。 5 组态王:组态王是国内第一家较有影响的组态软件开发公司( 更早的品牌多 数已经湮灭) 。组态王提供了资源管理器式的操作主界面,并且提供了以汉字作为 关键字的脚本语言支持。组态王也提供多种硬件驱动程序。 6 c o n t r o x ( 开物) :华富计算机公司的c o n t r o x2 0 0 0 是全3 2 位的组态开发平 台,为工控用户提供了强大的实时曲线、历史曲线、报警、数据报表及报告功能。 作为国内最早加入o p c 组织的软件开发商,c o n t r o x 内建o p c 支持,并提供数十种 高性能驱动程序。提供面向对象的脚本语言编译器,支持a c t i v e x 组件和插件的即 插即用,并支持通过o d b c 连接外部数据库。c o n t r o x 同时提供网络支持和 w e b s e r v e r 功能。 其他常见的组态软件还有g e ( 美国通用电气公司) 公司的c i m p l i c i t y , r o c k w e l l 的r s v i e w ,n i 的l o o k o u t ,p c s o f t 的w i z c o n 以及国内些组态软件,也 都各有特色。限于篇幅,不再一一介绍。 1 2 组态软件的功能特点、发展方向 目前看到的所有组态软件都能完成类似的功能:比如,几乎所有运行于3 2 位 w i n d o w s 平台的组态软件都采用类似资源浏览器的窗口结构,并且对工业控制系 统中的各种资源( 设备、标签量、画面等) 进行配置和编辑;都提供多种数据驱动程 序;都使用脚本语言提供二次开发的功能,等等。但是,从技术上说,各种组态 软件提供实现这些功能的方法却各不相同。从这些不同之处,以及p c 技术发展 的趋势,可以看出组态软件未来发展的方向】。 1 数据采集的方式 大多数组态软件提供多种数据采集程序,用户可以进行配置。然而,在这种情 况下,驱动程序只能由组态软件开发商提供,或者由用户按照某种组态软件的接口 规范编写,这为用户提出了过高的要求。由o p c 基金组织提出的o p c t 堙】( o l ef o r p r o c e s sc o n t r 0 1 ) 规范基于微软的o l e d c o m 技术,提供了在分布式系统下,软件组 件交互和共享数据的完整的解决方案。在支持o p c 的系统中,数据的提供者作为服 务器( s e r v e r ) ,数据请求者作为客户( c 1 i e n t ) ,服务器和客户之间通过d c o m 接口 进行通信,而无需知道对方内部实现的细节。由于c o m ( c o m p o n e n to b j e c tm o d e l ) 技术是在二进制代码级实现的,只要遵循共同的c o m 规则就可以实现互操作,所以 服务器和客户可以由不同的厂商提供i 。在实际应用中,作为服务器的数据采集程 序往往由硬件设备制造商随硬件提供可以发挥硬件的全部效能,而作为客户的组 态软件可以通过o p c 与各厂家的驱动程序无缝连接,故从根本上解决了以前采用 专用格式驱动程序总是滞后于硬件更新的问题。同时,组态软件同样可以作为服务 器为其他的应用系统( 如m i s 等) 提供数据。o p c 现在已经得到了包括i n t e l l u t i o n 、 s i m e n s 、g e 、a b b ”副”刘等国外知名厂商的支持。随着支持o p c 的组态软件和硬件 设各的普及,使用o p c 进行数据采集必将成为组态中更合理的选择 2 脚本的功能 脚本语言是扩充组态系统功能的重要手段。因此,大多数组态软件提供了脚本 语言的支持。具体的实现方式可分为三种:一是内置白勺类c b a s i c 语言;二是采用 微软的v b a 的编程语言;三是有少数组态软件采用面向对象的脚本语言。类 c b a s i c 语言要求用户使用类似高级语言的语句书写脚本,使用系统提供的函数调 用组合完成各种系统功能。应该指明的是,多数采用这种方式的国内组态软件,对 脚本的支持并不完善,许多组态软件只提供i f t h e n e l s e 的语句结构,不提供 循环控制语句,为书写脚本程序带来了一定的困难。微软的v b a ( v i s u a lb a s i cf o r a p p l i c a t i o n ) 是一种相对完备的开发环境,采用v b a 的组态软件通常使用微软的 v b a 环境和组件技术,把组态系统中的对象以组件方式实现,使用v b a 的程序对这 些对象进行访问。由于v i s u a l b a s i c 是解释执行的,所以v b a 程序的一些语法错误 可能到执行时才能发现。而面向对象的脚本语言提供了对象访问机制,对系统中的 对象可以通过其属性和方法进行访问,比较容易学习、掌握和扩展,但实现比较复 杂。 3 组态环境的可扩展性 可扩展性为用户提供了在不改变原有系统的情况下,向系统内增加新功能的 能力,这种增加的功能可能来自于组态软件开发商、第三方软件提供商或用户自 身。增加功能最常用的手段是a c t i v e x 组件的应用,目前还只有少数组态软件能提 供完备的a c t i v e x 组件引入功能及实现引入对象在脚本语言中的访问。 4 组态软件的开放性 随着管理信息系统和计算机集成制造系统的普及,生产现场数据的应用已经 不仅仅局限于数据采集和监控。在生产制造过程中,需要现场的大量数据进行流程 分析和过程控制,以实现对生产流程的调整和优化。现有的组态软件对大部分这些 方面需求还只能以报表的形式提供,或者通过b e 将数据导盘郅外部数据库,以 供其他的业务系统调用,在绝大多数情况下,仍然需要进行再开发才能实现。随着 生产决策活动对信息需求的增加,可以预见,组态软件与管理信息系统或镪导决策 信息系统的集成必将更加紧密,并很可能以实现数据分析与决策功能的模块形式 在组态软件中出现。 5 对i n t e r n e t 的支持程度 现代企业的生产已经趋向国际化、分布式的生产方式。i n t e r n e t 烙是实现分 布式生产的基础。组态软件能否从原有的局域网运行方式跨越到支持i n t e r n e t , 是摆在所有组态软件开发商面前的个重要课题。限于国内目前的网络基础设施 和工业控制应用的程度,在较长时间内,以浏览器方式通过i n t e r n e t 对工业现场 的监控,将会在大部分应用中停留于监视阶段,而实际控制功能的完成应该通过更 稳定的技术,如专用的远程客户端、由专业开发商提供的a c t i v e x 控件或a v a 技 术实现,但这样对安全性和可靠性的要求更高。 用户的需求促使技术不断进步,在组态软件上这种趋势体现得尤为明显。未来 的组态软件掇是提供更加强大的分布式环境下的组态功能、全面支持a c t i v e x 、扩 展能力强、支持o p c 等工业标准、并能通过i n t e m e t 进行访问的开放式系统【6 1 。 1 3 课题的主要内容及意义 将工控系统的各种数据信息集中到w e b 数据库,通过w e b 服务器,将相应数 据传递到客户端的浏览器,是基于目前流行的b r o w s e r s e r v e r 结构模式上的一种 开发方式。它主要靠后台的数据库支持和利用动态h t m l 技术以及大量的编程来实 现。将w e b 技术与工业监测组态软件结合在一起,形成新的具有w e b 功能的工业 监测组态软件h 5 。 本论文结合中科大系统集成公司的“组态软件的h m i 及w e b 发布”项目,重 点在于论证和实现该组态系统中基于i n t e r n e t i n t r a n e t 的w e b 发布系统包括 l l e b 发布的控件、发布类型、发布原理、关键技术及实现。 该组态软件系统包括有图形编辑模块、组态运行模块和w e b 在线发布模块。 图形编辑模块采用与开发人员进行交互的方式,利用系统提供的一系列图形 元素来组合成各种工业流程画面,并可以对画面进行编辑、修改以及图形对象与 现场测点的连接等。在个实用的工业控制系统中,需要确定若干现场测点,这 些测点和图形对象的连接也是在图形编辑模块中完成。完成的画面存储为对象流 文件,运行时,组态运行程序读入已经存储好的二进制格式的对象流文件,再现 生产画面。w e b 发布系统的核心是一个a c t i v e x 控件,该控件以插件形式运行在 i e 中,w e b 发布系统把从生产现场采集来的实时数据赋绘画亟中的图形对象,用 户可以通过局域网或广域网在线浏览现场实时运行情况。 在工业监测系统中,应用w e b 技术实现远程监测已经成为越来越多的工控系 统不可或缺的重要组成部分【8 l 【9 j 。因此该选题对现代企业管理信息和车间控制信息 的集成、提高办公自动化水平、实现生产现场远程调度具有十分重要的意义,同 时也有力的论证了基于i n t e r n e t i n t r a n e t 的w e b 发布系统在企业信息应用中具 有很好的应用前景。 第二章w e b 发布技术简介 w o r l d w i d e w 曲( w w w l 是当前i n t e r n e t 网最流行的信息服务形式,这种服务 技术以h t t p 为标准,完成w e b 服务器和用户浏览器之间的信息交换和传递。与传 统的c s 方式存在一定的区别,一个w e b 信息系统,主要由用户浏览器、w e b 服 务器和数据库服务器三层结构组成( b w d 工作模式) 。数据库服务器存储大量的数据 信息。w e b 服务器处理来自各个合法用户的请求,并做出相应的处理。它处理之 后,负责把处理结果返回给相应用户的浏览器。这些都是以实现数据库与w e b 服 务器的互连为前提,因为数据库信息的w e b 发布是实现信息i n t e r n e t i n t r a n e t 化的关键【1 引。 信息发布是目前w e b 上最重要的应用。随着发布信息量的扩大,静态页面发 布信息的模式己不能满足用户对信息服务的动态性、实时性和交互性的需求,将 w e b 技术与数据库技术相结合,实现w e b 信息发布的交互式应用已成为必然【5 1 。目 前数据库厂商和w e b 公司也纷纷推出各自的产品和中间件以支持w e b 技术和数据 库技术的融合,这也为数据通过w e b 的动态发布提供了基础。因此,将w e b 技术 与数据库技术相融合,利用w e b 服务器的信息发布能力和数据库的数据管理能力 来构造大规模的信息发布系统已成为人们当前关注的热点【1 9 】1 2 0 。 2 1w e b 信息发布的文档类型 按照w e b 文档的交互方式。我们可以把w e b 信息发布的文档分成三种类型:被 动的( 只是提供信息) 、主动的( 需要访问者交互) 和动态的。 1 如果一个w e b 文档只是以文本、图形和超链接的形式来显示信息,交互只 限于选择这些超链接,那么这个发布信息用的w e b 文档就是被动的( 静态) 。 2 如果一个w e b 文档不仅是被动的。它还有交互性的图形用户界面 g u i ( g r a p h i c a lu s e ri n t e r f a c e ) 控件。这些控件使复杂用户输入成为可能,那么 这个用于发布信息的w e b 文档就是主动的。 3 如果一个w e b 文档的内容会随着时间的推移而自行改变,那么这个发布信 息用的w e b 文档就是动态的。动态w e b 文档除了考虑到时间因素,还要注意使整个 w e b 文档的框架保持一致。由于大部分动态w e b 文档只是把动态部分局限于一定 的区域,因此,动态w e b 文档的布局实际上是由静态目标来决定的 2 1 】。 2 2 基于w e b 技术的信息发布模型 按照w e b 文档的交互类型,我们可以把w e b 信息发布分成两类模式:以静态主 页形式发布信息的静态页面( w e b 文档通常表现为页面的形式) 发布和以动态交互 页面发布信息的数据库查询模式【2 2 】。 2 2 1 静态页面发布 所谓静态页面是指在浏览器请求之前已准备好且具有一定格式的h t m l 页面。 用h t m l 或x m l 语言写成的w e b 页面由表示信息的文本块和起控制作用的标记矢量 组成。发布信息的一方把信息以主页的形式发送到w e b 服务器上供w e b 用户浏览 或查找,并提供相应的支持。整个过程分成两部分:信息资源上载( 发布方提供信息) 和信息资源下载( w e b 用户浏览) 。如图2 1 : 图2 - 1w e b 页面的静态模型 这种发布模型,用户无法同w e b 页面交互,仅是被动地使用w e b 服务器提供的 静态页面,不能充分利用已有的数据库资源。对于网络管理员来说,维护静态页 面费时费力,需要不断地创建新w e b 页面和不断地删除与修改。 2 2 2 动态交互页面发布 动态的w e b 发布模型是相对于静态的w e b 而言,它利用w e b 数据库访问技术将 数据库中的数据在w e b 上发布。浏览器向w e b 服务器发出请求,w e b 服务器根据 请求执行相应的应用程序,处理来自用户端的信息( 包括查询和修改数据库) ,根 据处理的结果生成一个h t m l 页强。最后w e b 服务器将生成的h t m l 页面传回客户 端浏览器显示结果。这种模型使得w e b 文档的设计与数据相对独立,这也是动态 w e b 设计的基本原贝l j 。 f 蝴瞄萎h 罐麟h 黼临j i l 生j 翻硼值面i l _ j il 1 仕” l 陋“ll ” l j l ,。一l ,_ j 、一 图2 - 2 w e b 页面的动态模型 实现w e b 与数据库互联通常采用两种方法:一种是在w e b 服务器端提供中间件 来连接w e b 服务器与数据库服务器:另一种是把应用程序下载到客户端,并在客户 端直接访问数据库。客户端应用包括a v a a p p l e t 、a c t i v e x 、p l u g i n 等,其中最 典型的为a v a a p p l e t 。 发布信息的一方把信息以数据库( 表) 的形式发送到w e b 服务器上供w e b 用户 浏览或查找,并提供相应的支持。整个过程分成两部分:信息资源上载( 发布方提供 信息) 和信息资源下载( w e b 用户浏览) 。中间件负责管理w e b 服务器和数据库之间 的通信并提供相应的应用程序服务。由于它驻留在w e b 服务器上,因而中间件能够 作为w e b 服务器与数据库间通信的外部应用程序或动态链接库( d l l ) 而被调用。它 们可以依据w e b 服务器提出的请求对数据库进行操作,把结果以超文本的形式输 出。然后由w e b 服务器将此页面返回到w e b 浏览器,从而把数据库信息提供给用户 1 2 1 1 。 2 3w e b 发布的应用和发展趋势 早期的w e b 页面主要用来传递静态h t m l 文档,后来由于c g 接口,特别是 a v & 和a v a s c r i p t 语言的引入,使得w e b 页面可以方便地传播动态信息。借助 a v 8 和a v a s c r i p t 语言,可以设计出具有动画、声音、图形图像和各种特殊效 果的w e b 页面。交互式动态h t m l 页面的实现需要以大量数据资源为基础,为了对 数据资源进行高效的存取,自然会引入数据库系统,于是,w e b 数据库便应运而 生了。由动态交互主页发布信息的数据库模型可以看出,基于w e b 的网上数据库 访问技术是一种新的数据库访问技术【2 。 目前国内外的w e b 发布应用有基于w e b 的空间信息发布系统、基于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 发布系统、石化企业实时数据库 i n t r a n e t 发布。由此可见w e b 发布已经有了广泛的应用并且正在进一步渗入到更 深更广的领域。 2 4 动态w e b 发布的三层结构 在c s 环境下,一般将数据库中间件放在客户机和数据库服务器之间的中间 层,形成c s 三层结构:客户层( 实现用户界面,提供信息浏览) 、中间层( 实现客户 的全部业务逻辑) 、数据服务层( 实现数据定义、存储、备份、检索等功能) 。随着 w e b 服务器和浏览器技术的进一步发展与完善,为了简化较为复杂的g u l 的开发, 越来越多的用户界面采用标准通用的浏览器,形成了b i s 三层结构f 2 4 1 。 下面就简单比较传统的c l s 模式和使用新技术的b s 模式,然后进一步介绍 b s 模式当中的相关技术和概念。 2 4 1c s 模式 c s 模式是松散耦合结构,它们通过消息传递机制进行对话,客户向服务器 发出请求,服务器进行相应的处理后将结果返回客户。在c s 模式中,客户端需 要操作系统、网络协议、客户机软件、应用软件等好几层软件。而服务器端则是 单纯的数据库服务器。软件版本升级时,所有客户端软件需要更新。 2 。4 2b s 模式 由动态交互主页发布信息的数据库模型可以看出,基于w e b 的网上数据库访 问技术是一种新的数据库访问技术。w e b 数据库技术将传统“客户机一服务器”模 式( 即c s 模式) 拓展成“用户层一应用层一数据层”三层结构( 即b s 模式) 2 5 o b s 模式将c s 模式下分布于客户端负责大量业务处理的应用逻辑分离出来, 统一摆放于中间层应用层,简化了客户端软件,只需装上浏览器作为客户端应 用的运行平台,而将所有的开发、维护和升级工作集中在服务器端。用户使用浏览 器上网,向w e b 服务器发送请求,w e b 服务器处理请求,查询数据库,执行应用程序, 并将结果信息组织成超文本标记语言( h y p e rt e x tm a r k u pl a n g u a g e ,h t m l ) 页面发 送给用户,在用户的浏览器上显示,组成了一个三层的b s 模式。 图2 - 3 铡览器服务器模式韵三层结构 这样的三层结构技术建立的客户服务器应用系统的优点是:( 1 ) 轻量级的用 户层不受限于硬件和软件平台,且界面美观、统一,可操作性强;( 2 ) 由于应用逻辑 不再分布于不同的客户机上,而是统一摆放于中间层,系统可维护性强,升级也很 方便易行;( 3 ) 三个层次结构清晰,各层的分布非常灵活,在系统扩展时,可以方便 地将各层独立地分布于不同的物理服务器上。因此,w e b 数据库技术正逐渐成为数 据库应用开发的首选【2 6 】。 2 5b s 模式的中l 圃件技术 2 5 1 中间件的功能 从概念上讲,很早就有了中间件的雏形。但是,只是在c s 模式以及 d o w n s i z i n g ( b p 所谓计算机系统缩小化,曾风行一时,就是用微机或小型机代替大 型机) 的概念提出之后,中间件才被人们广泛地关注。一般认为,中间件是一种在 计算机硬件和操作系统之上,支持应用软件开发和运行的系统软件。作为各层之 间通信的中介,中间件提供了分布的服务和资源的透明访问,屏蔽了异构部件之 间的差异( 2 ”。 中间件的产品种类很多,综合其特点来看,大致划分为以下六种:数据库中 间件( d l ) ,远程过程调用中间件( r p c ) ,面向消息中间件( m o m ) ,对象请求代理( o r b ) , 事务处理管理( t p m ) ,专用中间件( p m ) 。其中,数据库中间件是应用最广泛、技术 最成熟的一种2 4 】【2 8 1 。 在b s 的三层结构中,中间件是用户界面和数据库之间连接的桥梁,其主要功 能是反映和处理事务逻辑,负责管理w e b 服务器与数据库服务器间的通信,并提 供应用程序服务,可直接或通过调用外部程序和脚本代码来访问数据库。下面我 们重点介绍基于w e b 的数据库中间件1 2 。 2 5 2 基于w e b 的中间件 当前实现w e b 与后台数据库服务器动态交互的技术主要有:公共网关接口技 术c g i ( c o m m o ng a t e w a yi n t e r f a c e ) 、i n t e r n e t 数据库连接器i d c ( t n t e r n e t i n f o r m a t i o ns e r v e r ) 、i n t e r n e t 服务器编程接口技术a p i 、活动服务器页面技术 a s p ( a c t i y e s e r v e r p a g e ) 、a v a 数据库连接技术d b c ( a v ad a t a b a s e c o n n e c t i v i t y ) 、通用对象代理体系结构c o r b a ( 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 ) 技术等。这些方法各有特色,有的刚刚起步,有的已趋成熟,总的 来说还没有形成一个默认的标准和共识,实际中采用何种方法还要具体情况具体 分析【3 0 】 3 t 】。 1 通用网关接口c g i 概念和简介 c g i ( c o m m o ng a t e w a yi n t e r f a c e ) 即通用网关接口,是最早的w e b 数据库连接 技术,它为外部应用程序与w e b 服务器的交互提供了一个公共的环境和一组协 议。作为w e b 服务器与数据库服务器的中间件,c g i 负责管理两者的通讯并提供 应用程序服务,能直接调用外部程序或脚本代码访问数据库,提供与d b 相关的动 态h t m l 文档。 机理 通过c g i 接口,w e b 服务器接收来自浏览器的含有c g i 串的h t t p 指令。w e b 服务器启动相应的c g i 应用程序,该应用程序对输入信息进行必要的处理。通过 c g i 接口程序读取指令的参数,对数据库进行查询访问,并将处理结果通过w e b 服 务器返回给浏览器。 特点 c g i 是w e b 最早提供的具有完善交互功能的手段,技术成熟。c g i 应用曾是产 生动态h t m l 应用的首选类型。c g i 最大的优势是无任何开发和平台上的限制,只 要满足c g i 标准的应用都可,并且是多平台多用户的。但是,c g i 连接方式存在 着明显的缺陷:( 1 ) 开发这种外部过程程序不容易,c g i 接口程序就不相同,导致开 o 发人员必须为不同的w e b 服务器编写不同的接口程序:( 2 ) 由于进行h t m l 和s q l 格式转换开销较大,这样很容易导致w e b 服务器成为瓶颈;( 3 ) 通过c g i 接口,w e b 浏览器和数据库服务器的交互性能特别差;( 4 ) c g i 应用程序运行效率不高:每个 新的c g i 程序都在服务器上新增一个进程,如果多个用户并发地访问该程序,这些 进程将耗尽该w e b 服务器的可用资源直至崩溃。 2 i n t e r n e t 数据库连接器i d c 概念和简介 i d c 是m i c r o s o f tw e b 服务器i i s ( i n t e r n e ti n f o r m a t i o ns e r v e r ) 的一个动 态链接库,它通过o d b c 接口访问各种数据库。使用i d c 可以发布数据库,也允许用 户访问数据库,因此它提供了一种使i n t e r n e t 数据库得以发布并可与用户交互的 方法,这只需要开发者编写少量的结构化查询语言( s t r u c t u r e dq u e r v l a n g u a g e ,s q l ) 查询代码和描述数据显示与收集方式的模板( h t x 文件) 。但这种 简单性是以牺牲应用程序的稳健和灵活性为代价的,使用i d c 不能实现复杂的控 制和数据验证,且i d c 性能也较差。 机理 i d c 包含两种类型的文件:i d c 脚本文件( i d c ) 和h t m l 模板文件( h t x ) 。i d c 脚本文件( i d c ) 用来控制数据库访问,其中包括数据库名、用户名、口令和s q l 语 句等数据库连接参数以及与此i d c 文件对应的h t m l 模板文件( h t x ) 的存储路径。 i d c 的处理流程大致如下:w e b 服务器i i s 对浏览器传来的u r l 字符串进行分析, 如果当前u r l 以“口i d c ”结束,就说明这是一个i d c 请求,于是将其传给i d c 接口 模块,i d c 将依次读取脚本文件并与数据库服务器进行通信;i d c 模块从数据库服 务器得到查询结果后,通过指定的模板文件而得到一个实际的h t m l 文档;然后将 该文档交给w e b 服务器i i s ,由i i s 将h t m l 文档返回w e b 浏览器。 特点 i d c 不仅可以从数据库中查询数据,也可以向数据库中存储数据。它具有良好 的独立平台使用性,开发较易,但是速度较慢,效率较低。但i d c 仅仅支持 m i c r o s o f t 的i i s ,而不支持其他的w e b 服务器。 3 i n t e r n e t 服务器编程接口i s a p i 概念和简介 n e t s c a p e 和m i c r o s o f t 两家w e b 服务器厂商分别推出了适用于各自w e b 服务 器的n s a p i ( n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河南省护理编制考试题库及答案解析
- 基金从业资格第四次考试及答案解析
- 2025年对叔丁基苯甲酸行业研究报告及未来行业发展趋势预测
- 2025年磁测设备行业研究报告及未来行业发展趋势预测
- 2025年改善睡眠产品行业研究报告及未来行业发展趋势预测
- 2025年超声白内障乳化仪行业研究报告及未来行业发展趋势预测
- 挤压修模工专业知识考核试卷及答案
- 金属铬还原工特殊工艺考核试卷及答案
- 玻璃厂食堂餐具存放管理规定
- 玻璃厂交货期管控办法
- 市级防汛物资管理办法
- 试油操作规程详解
- 婚姻家庭调解课件
- Mg2Sn基多层薄膜的层界面调控与热电性能
- 骨科门诊常见病诊疗流程
- 2025年英语四级考试真题试卷及答案
- 2025年心理辅导员职业资格考试试卷及答案
- 医院法律法规培训内容
- 科技创新管理办法细则
- 飞书使用教程培训
- 肺炎护理考试试题及答案
评论
0/150
提交评论