




已阅读5页,还剩69页未读, 继续免费阅读
(计算机应用技术专业论文)异地冗余数据库维护数据一致性的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 捅要 随着计算机技术的发展和企业信息化程度的不断加深,在许多行业,单位或 机构部门痰部都逐步实现了信息的计算机讫管理,各都门之闻的信怠共享越来越 频繁。但由于不同企业的地理位置,信息化建设的方式等诸多因素的存在,使得 在各部门中存在着大量的冗余数据。如何在信息系统中采用有效的方法来保证这 些冗余数据的一致性,是企业信息化过程中必须鳃决的问题。 本文就是从这一实际问题出发,首先对中间件技术作了概述,主要研究了j m s ( j a v am e s s a g es e r v i c e ) ,指爨了它在异地信息系统中应用韵优势。然后分析了 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 ) ,总结出了它在使用上的关键技术。最后分析 了当前维护数据一致链的主要方法,并在对这些方法进行比较的基础上,提池了 维护异地冗余数据库问数据一致性的模型。本模型主要是应用j m s 的异步消息处 理机制,在企业信息系统之间采用松散耦合的方式,以x m l 作为中间数据格式, 通过w e b l o g i c 服务器进行存储转发,从丽在隧络中实现异地冗余数据库闻数据的 一致性。 本文通过在实验室虚拟巽地冗余数据库的方式,实现了应屠触发器来提取数 据库中变化的数据,用d o m 把变化数据写入x m l 文档,用w e b t o g 堕c 作为服务器 来转发消息,j m s 消息的发送和接收,x m l 数据写入数据库等步骤。实现了本模 型龅各种功能,达到了预期的效果。一本模型的设计和实现,不仅体现了i m s 具存 l a v a 语言特有的平台无关性和x m l 与平台,语言和协议无关的格式描述和交换数 据等特点。也表明了把这两种技术应翊弱维护异地冗余数据库中是可行韵,为将 来企业信息系统的开发和集成提供了好的参考。 关键词:j m s ;消怠传递桥;冗余数据库;数据一致性 英文摘要 r e s e a r c ho nd a t ac o n s i s t a n c yi nd i s p e r s e dr e d u n d a n t d a t a b a s e s a b s t r a c t w i t ht h ed e v e l o p m e n to fc o m p u t e rt e c h n o l o g ya n dt h ed e e p e rd e g r e eo fe n t e r p r i s e i n f o r m a t i z a t i o n ,m a n yv o c a t i o n s ,d e p a r t m e n t sa n d i n s t i t u t i o n sh a v er e a l i z e dt h e c o m p u t e r i z e dm a n a g e m e n ti n t e r n a l l y , i n f o r m a t i o ns h a r i n gb e t w e e n d i f f e r e n t d e p a r t m e n t sb e c o m i n gm o r ea n dm o r ef r e q u e n t b u tb e c a u s ed i f f e r e n te n t e r p r i s e sh a v e t h e i rr e s p e c t i v eg e o g r a p h i c a lp o s i t i o n sa n dw a y so fi n f o r m a t i z a t i o nc o n s t r u c i i o n ,t h e r e a r em u c hr e d u n d a n td a t aa m o n gt h ed e p a r t m e n t s i ti st h ek e yp o i n tt ok n o ww h i c h m e t h o dt oa d o p tt og u a r a n t e et h ec o n s i s t e n c yo ft h er e d u n d a n td a t ao nt h ep r o c e s so f e n t e r p r i s ei n f o r m a t i z a t i o n t h i st h e s i sp r o c e e d sf r o mt h i sp r a c t i c a lp r o b l e m f i r s t l yi to v e r v i e w st h e m i d d l e w a r et e c h n o l o g y h i g h l i g h t i n gt h er e s e a r c ho fj m sa n ds h o w i n gi t sa d v a n t a g e si n t h ed i s p e r s e di n f o r m a t i o ns y s t e m l a t e ri ta n a l y z e sx m l , s u m m a r i z i n gt h ec r u c i a l t e c h n o l o g yo nu s a g e f i n a l l yi ta n a l y z e ss o m em a i nm e t h o d sa p p l i e dt om a i n t a i nt h e d a t ac o n s i s t e n c y , a n db a s e do n t h i s ,i tb r i n g sf o r w a r dt h em o d e lt om a i n t a i nd a t a c o m i s i t e n e yb e t w e e nd i f f e r e n tr e d u n d a n td a t a b a s e s t h i sm o d e li sm a i n l yt om a k eu s eo f t h ea s y n c h r o n o u si n f o c m a t i o np r o c e s s i n gm e c h a n i s mo fj m s ,a d o p t i n gl o o s e l y - c o u p l e d m o d eb e t w e e nv a r i o u se n t e r p r i s e s i n f o r m a t i o ns y s t e m s i tu s e sx m l a sm i d d l ed a t a f o r m a tw i t ht h ea s s i s to fw e b l o g i cs e r v e rt os t o r ea n di n t r a n s i tt om e e tt h ea i mo fd a t a c o n s i s i t e n c yb e t w e e nd i f f e r e n td i s p e r s e dr e d u n d a n td a t ab a s e s w i t ht h eh e l po fv i r t u a ld i s p e r s e dr e d u n d a n td a t a b a s e si nl a b o r a t o r yr o o m t h i s t h e s i sr e a l i z e sm a n ys t e p s :a p p l y i n gt r i g g e rt od i s t i l lt h ec h a n g i n gd a t ai nd a t a b a s e s , u s i n gd o m t or e a dt h ec h a n g i n gd a t ai n t ox m l m a k i n gu s eo fw e b l o g i ca st h es e r v e r t ot r a n s m i ti n f o r m a t i o n ,t h es e n d i n ga n dr e c e i v i n go fj m si n f o r m a t i o n ,t h er e a d - i no f x m ld a t ai n t od a t a b a s e s ,e t c i th a sr e a l i z e dt h ev a r i o u sf u n c t i o n so ft h em o d e la n d a t t a i n e dt h ee x p e c t e de f f e c t s t h ed e s i g na n dr e a l i z a t i o no ft h em o d e ln o to n l ye m b o d i e s 英文摘要 j m s sp l a t f o r mu h i v e r s a lp r o p e r t y a n dx m l sc h a r a c t e r so fm o d e d e s c r i p t i o n d i s c o n c e r n i n gw i t hp l a t f o r m ,l a n g u a g ea n dc o n t r a c ta n dd a t ae x c h a n g i n g ,e t c i ta l s o m a n i f e s t st h a ta p p l i n gt h et w ot e c h n o l o g yt om a i n t a i n d i s p e r s e dr e d u n d a n td a t a b a s e si s f e a s i b l e ,m e a n w h i l e ,p r o v i d i n gg r e a tr e f e r e n c e sf o rt h ee x p l o i t a t i o na n di n t e g r a t i o no f t h ee n t e r p r i s e si n f o r m a t i o ns y s t e m k e yw o r d s :j m s ;m e s s a g i n gb d g e ;r e d u n d a n td a t a b a s e ;d a t ac o n s i s t e n c y 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成硕士学位论文= =昱地亘金数塑庄维塑麴堡二塾丝的班究 = = 。除论文中 已经注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在文中 以明确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已经公开 发表或未公开发表的成果。 本声明的法律责任由本人承担。 论文作者签名:互珂。跏移年- 3 月习日 学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连海事大学研究生学位论文提交、 版权使用管理办法”,同意大连海事大学保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本 学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位论文。 保密口,在年解密后适用本授权书。 本学位论文属于:保密口 不保密一( 请在以上方框内打,) 做储戳。氯嚣嚣茹) 修日期:知万年3 月卅日 异地冗余数据库维护数据一致性的研究 第1 章绪论 1 1 课题的提出及其研究意义 当今社会已进入信息化时代,数据库在企业中的应用也越来越多,即使是在 最简单的企业应用系统中也经常会用到数据库。集中式关系数据库是目前广泛使 用并为大家所熟知的一种数据库体系结构。 所谓集中式数据库系统就是指数据库的数据集中存储在一台计算机上,数据 的处理也集中在一台计算机上由相应的d b m s ( 数据库管理系统) 来完成。随着计 算机应用的不断加深,特别是计算机网络技术的迅速发展,关系数据库系统已普 遍建立在计算机网络之上,这时集中式关系数据库系统就表现出了它的一些不足。 主要表现在:数据按实际需要已在网络上分布存储使用,但在处理时又是 具有相互联系性的,致使各个系统之间的通信开销过大。主要数据集中在一台 计算机上的数据库中,一旦这台计算机发生故障,不能正常运行,则整个系统都 会受到影响。系统的性能欠佳,可靠性不高。由于采用集中式管理,系统规模 的增加或系统的重新配置都不够灵活,整个系统的可扩充性差。因此,在网络上 就出现了大量的异地冗余数据库系统,这些数据库系统可以各自独立的工作,又 可以协伺工作。在这些数据库系统中存在着大量的相同或相关数据,这些数据便 是大家所熟知的冗余数据。如果要协同各数据库系统之间的工作,保证这些冗余 数据的一致性,各数据库系统相互之间就必然会进行数据的交换或传递。就如下 图的结构一样: 第1 章绪论 _ 级数拊席系统 :级数搦孵系统 i 级数抛库系统:i 级数嘏胯系统 图1 1 冗余数据库结构图 f i gt 1t h ep i c t u r eo fs t r u c t u r ei nr e d u n d a n c yd a t a b a s e 关系数据库中的数据冗余主要是指关系数据库中同一信息数据的重复存贮。 数据冗余浪费了宝贵的资源,应尽量减少。但现在存在的异地关系数据库系统中, 为实现一些功能需要数据冗余的存在确是必需的。这些关系数据库系统在整体上 是一个有机联系的整体,他们之间是整体和局部的关系。它们是在地理上分散而 在逻辑上可以相互协同工作的关系数据库系统。这些在结构上同构或异构的数据 库管理系统使用计算机网络,将在地理位置上分散而管理和控制又需要不同程度 协同的多个逻辑单位( 通常是集中式数据库系统) 联结起来,逻辑上组成一个协 同工作的管理系统。这样协同工作的数据库系统可以看成是:计算机网络与数据 库系统技术的有机结合。 本论文就是依据这些,在研究企业中应用较多的关系数据库的基础上,针对 2 异地冗余数据席维护数据一致性的研究 现实中存在的,在不同地理位置的数据库中存在大量相关冗余数据这一问题,提 出了应用中间件技术中j m s ( j a v am e s s a g es e r v i c e ) 的消息传递机制来保证冗余数 据的一致性,应用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 ) 这门在网络中广泛使用的 标准语言,在网络中进行传递。使用这两门技术来实现维护异地冗余数据库中数 据的一致性。 本论文为今后实现企业信息系统集成,提供了一种基于中问件技术来解决异 地冗余数据库中数据一致性的方法,同时也可以为一些己存在的信息系统的扩充 提供有效的手段。因为j m s 是以j a v a 语言为基础的,具有j a v a 语言的平台无关性 等特点,可以提高代码的可用性,缩短了系统的开发周期,提高系统的可维护性。 1 2 课题设计目标 本课题的设计目标是在研究关系数据库和相关技术的基础上,针对存在的大 量异地冗余数据,提出一种维护异地冗余数据一致性的模型,并实现该模型。深 入学习j m s 消息服务的中间件技术和x m l 技术,因为现在j m s 技术广泛的被应 用在大型企业的消息系统中,x m l 技术在异构数据交互性方面也有它的优势,这 两种技术的结合使用在解决异地冗余数据的一致性方面有很大优势。应用这两种 技术来实现异地子系统数据库和中心系统数据库中冗余数据的一致性,必x m l 文 档为媒介在网络中传递异地数据库中数据的修改,以i m s 异步消息的模式来传递 存储数据修改信息的x m l 文档,并且通过相应的转换步骤把标准宙勺x m l 文档转 换为关系数据库能接受识别的形式,然后进行相应的修改转换以保持异地冗余数 据库中数据的一致性。本文是以m ss q l s e r v e r 数据库为例设计相同的表结构,在 数据库系统之间利用j m s 和x m l 等相关技术,实现这个模型来保持数据库之间 冗余数据的一致性。虽然企业信息系统之间也可以通过数据库本身具有的复制, 事务日志等技术来维护不同数据库中冗余数据的一致性,但是本文认为使用本文 提出的这种异步消息传递模式来进行冗余数据的维护,对异地信息系统的扩充是 非常有效的,具有很高的性价比。 3 第1 章绪论 1 3 本论文的组织安排 本论文的章节安排如下: 第1 章为绪论。主要介绍了本课题的提出和意义,及其设计的目标。 第2 章主要介绍了本课题相关的技术。首先是本文应用的基础中间件技术, j m s 技术和x m l 技术。结合这些技术的情况,说明在企业信息系统中使用这些技 术的好处,并介绍了一些应用的比较好的中间件产品,进行对比。 第3 章针对j m s 消息服务,主要介绍了现在流行的几种服务器,这些服务器 都能够很好的支持j m s 消息服务。作为j m s 消息服务的管理者,他们都能够实现 对点到点模式和发布订阅模式的完善支持。 第4 章介绍了现在流行的数据同步更新技术,并对他们进行比较。对使用j m s 和x m l 技术进行了可行性分析,说明在企业信息系统中使用这两种技术的好处。 第5 章主要介绍了为了解决企业信息系统中存在的问题,所给出的问题解决 模型。并且对模型的每个部分作了详细的说明和介绍,以便为将来能够在企业信 息系统中实现提供参考。 第6 章总结了本论文课题的研究工作,给出了本论文存在的一些缺点和不足。 4 异地冗余数据库维护数据一致性的研究 第2 章课题相关技术研究 解决异地冗余数据库数据一致性的_ 个难点就是如何实现数据库数据传输的 问题。中间件技术中的消息中间件能很好的解决这个问题,它能够满足异地环境 下这种数据传输的需要,是一个很好的选择。下面从中间件的概述出发,介绍了 中间件的概念,分类等,详细介绍了消息中间件。 2 1 中间件技术概述 2 1 1 中间件的基本概念 中间件是构造三层结构较为理想的解决方案。直观的理解,中间件就是处于 应用软件和系统软件之间的一类软件,是独立于硬件或数据库厂商的一类软件, 是客户端与服务器端的连接件,是需要进行二次开发的中间产品【6 1 。中间件是位于 操作系统和应用系统之间的具有标准程序接口和协议的通用服务,对于不同的硬 件,操作系统平台具有符合标准接口和协议规范的具体体现。通俗的讲中间件就 是处于用户接口与主机或其他系统间的软件,即应用的操作系统。一般情况下, 中间件由客户应用程序接口,网关,s q l 翻译器及用于访问数据源的服务器软件 四部分组成。 中间件具有易于集成,易于移植,易于演进,易于使用及高可靠性等特点。 1 7 1 易于集成:中间件能够无缝的连入应用开发环境中,应用程序可以很容 易的定位和共享中间件提供的应用逻辑和数据。 易于移植:中间件使与平台有关的细节对于应用程序来说是透明的,可 以在不改变应用程序代码的情况下改换计算机底层硬件,操作系统或通信协议。 易于演进:中间件实现的功能对应用程序来说是透明的,可以对局部进 行改进而不影响到系统的其他部分。 易于使用:中间件和同构或异构环境下的多种数据源通信,同时管理数 据间的公共逻辑约束。将用户从复杂的平台,网络,数据库选择中解放出来。 高可靠性:中间件需要提供管理和恢复功能,保证事务及关键业务不被 5 第2 章课题相关技术研究 丢失。 2 1 2 中间件分类 i d c 对中间件的分类方法已经为业界所普遍接受。它根据中间件在应用领域, 所处位置及使用功能上的不同来划分,主要将中间件分为以下六类:1 3 6 1 1 数据访问中间件 是为了建立数据应用资源互操作的模式,对异构环境下的数据源或文件系统实 现连接的中间件。 2 终端仿真屏蔽转换 用以实现客户机图形用户接口与已有的字符接口方式的服务器应用程序之间 的互操作。 3 远程过程调甩中间件 远程过程调用( r e m o t ep r o c e d u r ec a l l ,r p c ) 是一种广泛使用的分布式应用程 序处理方法。一个应用程序使用r p c 来“远程执行一个位于不同地址空间里的 过程,并且从效果上看和执行本地调用相同。远程调用机制已经逐渐被面向消息 机制所取代。 4 消息中间件 消息中间件指的是利用高效可靠的消息传递机制进行与平台无关的数据交流, 并基于数据通信来进行分布式系统的集成。 5 交易中间件 使用于联机交易处理系统,主要功能是管理分布于不同计算机上的数据的一致 性,保障系统处理能力的效率与均衡负载。 6 对象中间件 随着对象技术与分布式计算技术的发展两者相互结合形成了分布对象计算, 并发展成为当今软件技术的主流方。c o r b a 和d c o m c o m + 是当前对象中间件 的主流。 2 1 3 中间件的作用 具体地说,首先中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对 6 异地冗余数据库维护数据一致性的研究 一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业 务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术 上的负担。 中伺件带给应用系统的,不只是开发的简便,开发周期的缩短,同时也减少 了系统维护,运行和管理上的工作量,减少了系统总体费用的投入。s t a n d i s h 的调 查报告显示,由于采用了中间件技术,应用系统的总建设费用可以减少5 0 左右。 在网络经济大发展,电子商务大发展的今天,从中间件获得利益的不只是r r 厂商, i t 用户同样是赢家,并且是更有把握的赢家。 其次,中间件作为新层次的基础软件,其重要作用是将不同时期,在不同操 作系统上开发的应用软件集成起来,彼此像一个天衣无缝的整体协调工作。这是 操作系统,数据库管理系统本身做不了的。中间件的这一作用,使得在技术不断 发展之后,人们以往在应用软件上的劳动成果仍然物有所用,节约了大量的入力, 财力的投入。 2 1 4 消息中间件 消息中间件作为一个中间软件,为分布式企业应用系统中创建,发送,接收 和阅读消息提供了一套可靠通用的方法。基于m o m ( m e s s a g e - o r i e n t e dm i d d l c w a 托) 的系统允许通过异步交换消息来进行通信。u o m 使异步电子通信迅速可靠,并确保 消息的传递,接收通知和交易控制。 图2 1 消息传递机制 f i g2 1 t h e m e c h a n i s mo fm e s s a g ed e l i v e r y m o m 的核心就是提出了目的地对象( d e s t i n a t i o n ) 的概念,包括队列( q u e u o 和 主题( t o p i c ) 。消息客户发送消息到消息中间件上,消息中间件接收并依次转发到 7 第2 章课题相关技术研究 合适的消息接收者上。 m o m 可以既支持同步方式,又支持异步方式,它可以很好地适用于面向对象 的编程方式。中间件领域目前最热门的技术是异步的消息中间件,异步中间件技 术比同步中间件技术具有更强的容错性,在系统故障时可以保证消息的正常传输, 因而在过去的时间里发展是非常迅速的。消息中间件技术可以分为两类:点到点 方式和发布订阅方式。点到点方式建立起消息收发的一一对应关系,而发布订阅 方式可以指定哪种类型的用户可以接收哪种类型的消息。发布订阅方式由于更加 智能有效,事实上己成为异步中间件的非正式标准。 m o m 具有以下一些基本特点j 1 可靠消息发送。应用程序发送消息时,消息发送者和接收者不一定要求同时 在线,m o m 可以确保消息接收者在掉线的情况下消息不会丢失。 2 异步通信。m o m 允许消息发送者发送消息后继续进行其它工作,而不必等 待接收者的响应。 3 交易支持。m o m 提供了对交易的支持,同时也经常整合在交易系统中。 一次发送,依次接收。m o m 确保消息可以发送且仅发送一起,接收者可以按 照消息发送的顺序依次接收。 4 消息路由服务。消息通过该服务可以经过最短路径到达消息目的地。系统管 理员只需要定义每条路径的代价,m o m 就可以为消息计算出最低代价的路径。而 且,消息路由服务可以避免单点失效,因此非常适合用于不可靠的网络环境中。 5 m o m 减少了开发跨平台和网络协议软件的复杂性。它屏蔽了不同操作系统 和网络协议的具体细节,通过提供a p i 实现可以提高系统结构的灵活性以及实现 异构平台的互操作。所有应用之间的消息通信都通过消息服务器进行,新的应用 程序可以不经过重新编译和重新连接就可以部署到分布式系统中。这种消息通信 的形式极大的降低了分布式系统设计和实现的复杂性。 2 1 5 中间件的发展趋势 2 0 0 6 2 0 1 0 年,中国中间件软件市场将以1 8 6 的年均复合增长率增长,市场 规模将从2 0 0 5 年的8 7 5 亿元增长到2 0 1 0 年的2 0 5 2 亿元。自2 0 0 6 年开始,中国 8 异地冗余数据库维护数据一致性的研究 中间件软件市场的增长率将呈现下降趋势,从2 0 0 5 年的2 3 9 逐步下降至2 0 1 0 年的1 6 3 ,市场将逐步走向成熟。到2 0 1 0 年,应用服务器以3 2 8 的份额取代 消息中间件占据市场首位。未来,应用服务器在金融、电信和电子政务市场广泛 分布,并逐渐蚕食交易中间件及消息中间件的一部分市场,导致后两种中间件在 b s 市场中增长放缓。应用服务器的标准完备,所遵循的主要规范e j b 及j 2 e e 逐 渐走向成熟,提供此类产品的厂商又众多,因此竞争也最激烈。 消息中间件以其独特的优势为各种分布式应用的开发注入了强大动力,在需要数 据可靠传输的系统中牢牢占据一席之地,极大地推动了应用系统集成的发展。在 各行业的单一应用系统建立起来以后,应用整合已成为新一轮应用系统建设的热 点,其中消息中间件扮演了重要的角色,它将是生命周期最长的中间件产品类型, 但市场份额逐渐减小。 3 9 l 。 今后几年中国中间件市场的发展趋势: t 高端产品需求稳定,中小企业市场拉动低端产品增长 2 厂商跑马圈地,全面转向s o a 3 服务差异化提升产品竞争力 4 传统中间件生命力不减,行业应用带动新兴中间件市场发展 5 r f i d 日益火爆,巨头掌控市场 6 s i 成为争夺焦点,渠道布局日趋合理 2 2j a v a 消息服务概述 2 2 1d f l s 基本概念 j m s 消息服务( j a v a m e s s a g e s e r v i c e ,j m s ) ,定义了j a v a 中访问消息中间 件( m e s s a g e o r i e n t e dm i d d e w a r e ,m o m ) 的接1 2 1 标准,是j 2 e e ( j a v a2 p l a t f o r m e n t e r p r i s ee d i t i o n ) 体系结构中定义的标准服务之一。j m s 为j a v a 程序提供了一种 创建,发送,接收和读取企业级消息系统消息的一般方法,其目的是提供给消息 系统的客户一个固定的接口,而且与底层韵消息提供者无关。这样,客户端的应 用程序可以在不同的机器和操作系统中移植,而且能在不同的消息系统产品之间 9 第2 章课题相关技术研究 转移。j m s 客户端都是建立在j a 、,a 技术之上的,从而也能使其它j 越,a a p i 如j d b c 数据库连接,使用j a v ab e a n 组件模型,j n d l 名字服务,j t a 客户端交易处理控制 以及j 2 e ea p i 来实现企业级应用服务程序。1 8 l j m s 定义的消息可以是请求,报告或包含了两个不同应用间需要协调信息的 事件。消息机制提供了一个抽象层,使应用代码与目标系统实现细节分离。j m s 规定了m o m 的一个相对丰富的形式。它支持多种单向( 异步) 消息发送方式和 双向( 请求应答) 方式。消息发送可以是快速的但是没有那么可靠,或是慢一点 但是更可靠。j m s 甚至引入了一种以前非同寻常的特点“可靠订阅”,它允许一个 应用程序暂时离线一段时间而后再它上线的时候继续后来的消息发送循环。使用 j m s 标准真正的好处在于t 提高开发者的技能;允许对一个m o m 的开发和对另 一个m o m 的复用;允许一个应用程序包能够相对容易的在一个拥有广泛种类的 m o m 环境中被使用。 2 2 2 消息模式和对象模型 1 j m s 规范允许客户端应用使用两种模式: ( i ) 点到点模式( p o i n t t o p o i n t ) 点到点的消息模式是一种一对一的消息传递方式。消息生产者向一个特定的 队列发送消息,消息消费者从相应队列顺序读取消息,每一个消息只有一个接收 者。 残场锕怂 图2 2 点到点消息交换模式 f i g2 2t h em o d eo fm e s s a g ee x h a l ei np o i n tt op o i n t ( 2 ) 发布订阅模式( p u b l i s h s u b s c r i b e ) 1 0 异地冗余数据库维护数据一致性的研究 发布订阅模式是一种多对多的消息传递方式。消息生产者向特定的主题发布 消息,消息消费者订阅主题,消息系统将消息传给消费者,每一个消息可以有多 个接收者。 图2 3 发布订阅消息交换模式 f i g2 3p u b l i s h s u b s - c f i t ) et h em o d eo f m e s s a g ee x c h a n g e 2 点到点消息收发模式与发布订阅消息收发模式的异同点: ( 1 ) 相同点:使用j m st o p i c 的发布订阅式消息发送与点到点的消息发送有 一以下几个共同点。 消息发送可以是面向对象的,允许将整个对象作为消息发送 消息发送可以是事务性的 消息发送可以是异步或同步韵 消息发送可以与基础的第三方产品集成 消息可以发送给消息发送时不在运行状态的消息消费者 消息一旦被传递到队列或主题,发送消息的函数调用就会立即返回 可以显式地或自动地确认收到的消息 ( 2 ) 不同点:发布订阅式消息发送与点到点消息发送之间也有几点不周。 发布订阅式消息发送是一对多的,而点到点消息发送是一对一的。 发布的消息只传递给t o p i c 当前的预定者。客户只能接收到它向一个t o p i c 预定了的那些消息。而在点到点消息发送中,永久的消息将一直在q u e u e 中,直 到它超时或者某个接收者来取走该消息 发布订阅式消息发送中的永久消息是由“持久的预定 提供的。j m s 提供 第2 章课题相关技术研究 者存储由于预定者出于某种原因不可用而无法传递给预定者的消息。在下次预定 者连接上的时候,这些存储的消息将会被传递给它。这确保了客户预订一个t o p i c 之后,所有发布的消息都会递送给它,哪怕该预定者不是总在运行。如果预定不 是持久的,在预定者掉线时发布的任何消息都不会递送到预定者。 3 j m s 对象模型 j m s 对象模型用于描述j m s 客户端与j m s 服务提供者相连的各种对象,如下 图: 图2 4j m s 消息处理的模型 f i 9 2 4 邢t h em o d e lo fm e s s a g ed i s p o s e c o n n e c t i o nf a c t o r y :用于客户创建连接的管理对象。 c o n n e c t i o n :j m s 客户机到j m s 服务器之间的活动连接。 s e s s i o n :用于发送和接收消息的单线程上下文。 d e s t i n a t i o r a :封装消息目的地址信息的管理对象。 m e s s a g ep r o d u c e r 和m e s s a g ec o n s u r n e r ;由会话创建,用于发送和接收消息的 对象。 1 2 异地冗余数据库维护数据一致性的研究 m s g :为用于传递的j m s 消息 2 2 3j m s 消息的构成 j m s 消息由三个部分组成:一个头( h e a d e r ) 。属性和一个体。 ( 1 ) 消息头:包含许多预定义的域,客户机和提供者可以用来识别和路由消 息。 ( 2 ) j m sa p i 提供了一些预定义的,提供者支持的属性名,使用预定义的属 性还是用用户自定义的属性是可选的。 ( 3 ) j m s a p i 定义了5 个不同格式f f 勺m e s s a g e b o d y 也被称为消息的类型, 它允许程序发送和接收不同格式的数据,并提供与现存消息格式韵兼容性。 表2 1j m s 消息的类型 t a b2 1 , t h et y p e 馥m e 鲢a 盟i nj m s 消息豹类型 b o d y 的内容 t e x t m e s s a g e一个j a v al a n g s t r in g 对象 。如p m e s s a g e,一组_ 名字值,名字是s t r i n g 对象 字节流,消息b o d y 的内容被编码,与存在的 b y t e s m e s s a g e消息系统兼容 s t r e a m m e s s a g ej a v a 编程语言的原始类型的值的流。 0 b j e c t m e s s a g ej a 丑, a 编程语言的一个s e r i a li z a b l e 对象 m e s s a g e没有b o d y 仅由h e a d e r 和p r o p e r t i e s 组成 2 2 4 主要j m s 产品分析和比较 1 j m q l 1 j m q ( j a v am e s s a g eq u e u e ) 是s u n 公司实现j m s 产品由纯j a v a 语言开发 而成。支持点到点和发布订阅两种消息模式。j m q 提供了一套简单,有效,灵 活的企业级消息解决方案,有以下一些基本特征:支持w i n d o w s 操作系统和u n i x 第2 章课题相关技术研究 操作系统,支持j d k ;兼容j m s 规范,支持点到点消息模式,发布订阅消息模式 以及连接认证模式;j m q 提供者使用j n d i 访问j m s 管理对象,它支持l d a p 和 文件系统服务提供者,j m q 使用命令行方式配置管理对象;j m q 提供远程管理消 息路由的工具以及调试,监控客户应用程序的工具。 2 i b m m q s e r i e sj m s 1 9 1 i b m m q s e r i e s 是i b m 的消息处理中间件。m q s e r i e s 提供一个具有工业标准, 安全,可靠的消息传输系统。它的功能是控制和管理一个集成的系统,使得组成 这个系统的多个分支应用( 模块) 之间通过传递消息完成整个工作流程。m o s e r i e s 基本由一个信息传输系统和一个应用程序接口组成,其资源是消息和队列。 m q s c r i e s 的关键功能之一是确保信息可靠传输,即使在网络通信不可靠或出 现异常时也能保证信息的传输。m o s e r i e s 的异步消息处理技术能够保证当网络或 者通信应用程序本身处于“忙状态或发生故障时,系统之间的信息不会丢失, 也不会阻塞。同时,m q s e r i e s 是灵活的应用程序通信方案。m q s e r i e s 支持所有主 要的计算平台和通信模式,拥有连接主要产品的接口。 3 w e b l o g i cj m s w e b l o g i c 是b e a 公司实现的基于工业标准的j 2 e e 应用服务器,支持大多数 企业级j a v a a p i ,如f _ j b ,j s p ,j n d i 等。w e b l o g i c 完全兼容j m s 规范,支持由 j m s 消息激活的消息驱动。b e a n 。聊e b l o g 论j m s 支持点到点消息模式和发布订阅模 式,能够和其它w e b l o g i c 组件,如啪,s e r v l e t , i d b c 连接池,j t a 等,协调工作。 w e b l o g i c j m s 具有以下一些基本特征t 通过使用管理控制台设置j m s 配置信息; w e b l o g i cj m s 应用能够整合其它使用j t a 的资源服务器,j m s 应用能够与其它一 些使用j t a 的j a v a a p t 参与到交易系统中;支持消息的多点广播;支持持久消息 存储的文件和数据库lw e b l o g i c 提供服务器集群功能,确保了集群内的负载均衡: w e b l o g i c 支持以下一些j m s 的特点:创建x m l 消息,动态创建持久队列和主题。 1 3 5 4 f i o r a n o m q f i o r a n o m q 是f i o r a n o 公司实现韵一个事件驱动的通信平台,提供了对j m s 规范的纯j a v a 实现。它也支持安全,远程管理和持久消息派送等功能,具有以下 1 4 异地冗余数据库维护数据一致性的研究 一些基本特征: f i o r a n o m o 为整合非j m s 客户提供了c + + 的运行库 f i o r a n o m q 可以作为一个基于集散技术的消息代理来获得 f i o r a n o 通过网络上的多个f i o r a n o 服务器来保证了高性能,高容错性和错 误保护 f i o r a n o 支持内建的1 2 8 位数据加密s s l 支持;也支持基于安全的a c l 和 机遇授权的验证。 f i o m n o 提供了一个健壮和轻负载的运行环境 f i o r a n o 支持基于j n d i 和l d a p 的名字和目录服务 f i o r a n o 支持消息系统的远程管理 f i o r a n o 使用服务压入技术来减轻客户端消息派送的负载 2 3x m l 技术 2 3 1x m l 简介 x m l l l 0 1 ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标记语言) 是由万维网联盟 ( w 3 c 定义的一种语言。所谓可扩展性是指x m l 允许用户按照x m l 规则自定 义标记。x m l 文件是由标记及其所标记台勺内容构成的文本文件,与嗍文件不 同的是。这些标记可自由定义,其目的是使得x m l 文件能够很好地体现数据的结 构和含义。w 3 c 推出x m l 的主要目的是使得i n t e m e t 网络上的数据相互交换更方 便,让文件的内容显得易懂。 x m l 数据表示的是一个开放标准,它定义了数据交换的规范,这种规范独立于 机器硬件平台、操作系统、提供商和编程语言,可以在交换双方或某一个行业中根 据特定需求定制。x m l 具有结构性、可扩展性、自描述性等特点。为了规范x m l , 使用x m l s c h e m a 给出x m l 文档的详细明确的定义。它支持许多复杂的数据类 型,有x m l s c h e m a 约束的x m l 文档,具有更高的有效性,内容结构也更加严谨。 在x m l 文档处理方面,目前的d o m 等处理x m l 的a p i 都可将x m l 文档解析 为树型结构,方便后续处理。因此,文中使用x m l 作为数据交换的载体,选用d t d 1 5 第2 章课题相关技术研究 明确定义x m l ,d o m 处理x m l 文档,能低成本地实现异构数据的交换集成。下 图是x m l 的标准体系: 移 争一瓣糊燃一 图2 5 ) n 也的标准体系结构 t a b2 5t h es t a n d a r ds t n l e t t t r eo fx m l 2 3 2x 眦的优势 作为表示结构化数据的行业标准,x m l 向组织,软件开发人员,w e b 站点和 最终用户提供了许多优点。在高级数据库搜索,网上银行,医药,法律,电子商 务和其他领域,使用x m l 的力度进一步加大。x m l 是w 3 c 推出的,并已获得了 异地兀余数据库维护数据一致性的研究 广泛的行业支持,并不断加强x m l 标准。x m l 不仅提供了直接在数据上工作的 通用方法,而且x m l 的威力在于将用户界面和结构化数据相分离。允许不同来源 数据的无缝集成和对同一数据的多种处理。从数据描述语言的角度看,x m l 是灵 活的,可扩展的,有良好的结构和约束;从数据处理的角度看,它足够简单且易 于阅读,几乎和h t m l 一样易于学习,同时又易于被应用程序处理,因此,x m l 必将带来下一代网络应用技术的革命。 2 3 3x m l 文件结构及基本语法 没有意义的数据是无法处理的,有意义的数据才能被应用程序所使用,而x m l 之所以被寄予厚望,是因为它完全符合下述条件: 1 不同的电脑之间传送的数据是有意义的。 2 可以被应用程序处理。 3 可以描述数据之间的关系 j 4 可以自定义数据的意义。 5 独立的数据描述结构。 x m l 应该包括3 大部分,即数据,结构与显示方法,x m l 文件中的结构用 于描
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国特戊酸市场经营风险及发展前景战略规划报告
- 辽宁省盘锦市名校2024-2025学年高三下学期5月大联考地理试题 及答案
- 2025届天津市南开区高三二模地理试题 及答案
- 2025年注册测绘师考试试题及答案
- 2024家庭教育指导师考试题库含答案
- 2025年燃气用户检修工考试练习题及答案
- (完整版)人力资源管理试题及答案
- 湖州云帆新材料科技有限公司年生产4000吨高性能发热冒口建设项目环评报告
- 重庆卷-2025届高考地理考前冲刺卷
- 公办教师聘用合同
- 2025年武汉市中考英语试卷真题(含答案)
- DGTJ08-85-2020 地下管线测绘标准
- 端粒长度预测模型-洞察及研究
- 2025新《治安管理处罚法》解读
- 浙江省舟山市2024-2025学年高二下学期6月期末物理+答案
- 执法办案培训课件
- 气候变化对水资源供需关系的动态演变分析
- 行政执法培训课件
- 老年人吸入性肺炎护理
- 春季儿童增高课件
- 环卫公司人员管理制度
评论
0/150
提交评论