分布式海量数据并行传输的研究与实现_第1页
分布式海量数据并行传输的研究与实现_第2页
分布式海量数据并行传输的研究与实现_第3页
分布式海量数据并行传输的研究与实现_第4页
分布式海量数据并行传输的研究与实现_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

1、分布式海量数据并行传输的研究与实现 长春理工大学硕士学位论文分布式海量数据并行传输的研究与实现姓名:付慧霞申请学位级别:硕士专业:计算机软件与理论指导教师:龚跃20080401摘 要随着信息化技术的不断发展,行业内部和行业间的业务数据量呈几何级数递增,海量数据的传输与处理难题成为制约信息化产业扩大的瓶颈,本文提出一种分布式海量数据并行传输设计与实现技术,系统采用了计算机集群及并行处理技术,以MobiLink技术为基础,将传输任务分解为若干个子任务,采用多台传输处理机分工并行传输方式,解决了海量数据传输处理上的瓶颈,在很大程度上解决了异构数据库系统间数据传输不兼容的问题;基于多路径QoS路由算法

2、实现了目标智能路由,可以有效地均衡网络负载,提高网络资源利用率,从而实现了大型网络系统中异构数据库信息系统间海量数据信息并行交换。关键词:计算机集群并行中间件MobjLinkQoS路由ABSTRACTWjtht econstantdevelopmentofinformationtech ology,thequan itiesoftransactionpresent鲇om硎cincreaseinbothi肋erindustryandinter-industries,thep oblemsof assdatatransmissionandtransactionausethebottleneckof

3、multiplyinginformationindustryThispaperinvolvesthetechniqueoftransmissionandimplementationofclusteredparalleldistribution;thissys emmakesu eofcompmerclusterandparallelt chnique,basedonMobiLinktechnology,dividingthetaskintoseveralactivitiesUsingmultransmissionprocessoreparatelytransmissionfolnls,solv

4、ingthebottleneckofmassiveamountofdatatransmissionTogreatextentsolvingtheincompatibilityofdatatransmissionamongisomerofdatabasesystem;basedonmultipathQoS?routingmethodimplementsaimsonintelligentrouter,aswellasefficientlyqualizesnetworkloads。raisestheuseratioofnetworkresourcessothatimplementsinformati

5、onparallelswitchamongisomerousdatabaseoflargenetworksystemsKeywords:clusterparallelmiddlewareMobilinkQoS-routing长春理工大学硕士学位论文原创性声明本人郑重声明:所呈交的硕士学位论文,分布式海量数据并行传输的研究与实现是本人在指导教师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。作者签名:盈楚肇 卫年上

6、月丑日长春理工大学学位论文版权使用授权书本学位论文作者及指导教师完全了解“长春理工大学硕士、博士学位论文版权使用规定”,同意长春理工大学保留并向国家有关部门或机构送交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权长春理工大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫描等复制手段保存和汇编学位论文。作者签名:鱼董盈指导导师签名:沁矽7叨多年上月“El、 年三一月卫日第一章 绪论§11本文研究的目的和意义近年来随着电子政务、电子商务技术的广泛应用,各个行业已经建立起基于广域网络的信息管理体系。在行业内部,业务信息由基层单位采集,向市县、地市、

7、省和国家汇集如人口信息。各行业间,如,工商、税务、银行、保险和公安等业务交互日益频繁,信息资源共享、信息资源的挖掘与利用,导致信息交换需求迅速增长,交换信息容量巨增。由于传统的软件及技术已经不能适应信息化建设对中间件的广泛应用需求。且在数据传输及交换中的一致性、及时性、高效性等得不到保障,从而带来不必要的经济损失,此类问题亟须解决。因此建立通用的、快速而安全、高效而可靠的传输通道,开发大型、支持海量数据并行传输的消息中问件就成为确保庞大的网络信息系统正常运转的关键问题I】。本论文的主要目标是研究大型网络信息系统中数据信息交换技术,开发通用的海量数据并行传输中间件软件,实现大型网络系统中异构信息

8、系统间数据信息交换、多级网络系统间数据信息交换。从而解决海量数据的传输问题,为电子政务、电子商务技术等其它相关领域的发展提供可靠的数据交换的平台。建立通用的、快捷安全、可靠而高效的传输通道,开发通用的数据传输平台成为确保庞大的网络信息体系正常运转、确保不同地域数据的一致及更新的及时的可靠保障。因此,本课题的研究与实现具有极其重要的现实意义,并且会对今后信息技术的发展有深远的影响。§12国内外研究现状近几年,国外中间件市场主要被两大国外厂商IBM和BEA垄断,他们在银行、证券、电信等高端行业以及IT等行业中得到广泛应用。前者凭借其在1999年推出的应用服务器WebSphere,扎根金融

9、、证券等行业;后者则是一家专门致力于中间件开发的公司,它的应用服务器产品Weblogic在美国市场占有率超过60,在国内电信及证券行业占据主要地位。国内流行的消息传输中间件,如IBM公司的IBMMQSeries、东方通公司的Tonglink、BEA公司的MessageQ等,IBM公司消息传输中问件市场占领导地位【2】。国外在中间件研究方面进行过不断的探索,主要工作有自适应重用中间件、自适应数据复制中间件、可编程、可重配中间件等研究131。国内流行的传输中间件,如BEA公司的MessageO、东方通公司的Tonglink、IBM公司的IBMMOSeries等,费用昂贵、网络条件要求高、传输效率差

10、、不能完全适应中国国情,相关的研究成果处于理论探讨阶段。能够支持海量数据并行传输的研究成果或成型产品国内外未见报道和使用。目前,国外的消息中间件产品占领着国内数据传输领域的主要市场份额,但仍存在许多技术缺陷。在传输承载能力方面,由于采用的是串行处理技术,如IBM公司的IBMMOSeries和BEA公司的MessageO等,当每次传输数据过大时传输耗时巨大,由于网络稳定性差容易造成传输中断;当需要多用户间数据交换时如数据汇总,经常发生传输等待、网络阻塞和系统死锁现象,导致传输系统瘫痪。由于目前消息中间件产品其处理方式所限,无法承担所面临界的海量数据传输要求。在传输功能方面,国内外流行的消息中间件

11、沿不具备独立传输功能,数据打包解包、数据压缩加密、传输过程监控等工作需另外编制程序完成,存在着需要二次开发、传输内容发生变动时修改困难、系统运行不稳定、维护工作量大等问题I“。§13本文的主要工作和组织结构本文的主要工作是设计与实现了基于MobiLink技术的海量数据并行传输系统,实现广域网络中异构数据库系统间数据信息交换,通过并行数据传输技术解决了海量数据传输的系统承载力问题,通过数据库日志传输机制研究解决传输效率问题,通过研究异构传输数据库配置与传输数据配置技术研究解决平台通用性问题,传输平台实现传输数据库、传输数据灵活配置。研究了计算机集群技术,利用并行计算机与集群技术提高数据

12、处理能力,实现任务的优化拆分与分配,使系统达到负载平衡。研究了QoS路由算法,提出了一种多路径OoS路由的启发式算法的模型。实现了目标智能路由,可以有效地均衡网络负载,提高网络资源利用率。本论文共分七章,各章组织如下:第一章给出了课题研究的目的、意义、研究现状,以及论文的组织结构。第二章介绍了计算机集群和并行处理技术的发展、背景、意义及分类。第三章介绍了中间件的概念、特点及分类;重点介绍了面向消息中间件的相关知识。第四章对Sybase公司的MobiLink技术进行了介绍,介绍了MobiLink技术的传输结构、同步过程、同步特性以及MobiLink技术的传输机制。第五章提出了多路径QoS路由的启

13、发式算法,该算法能根掘网络负载状况动态选路,有效地均衡网络负载,提高网络资源利用率,并能与传统路由算法良好共存,具有较好的性能和自适应性。第六章是本文的重点。介绍了系统设计思想及原理中间件的系统结构对本中间件系统总体设计以及主要流程图在系统设计过程中涉及到的主要表以及表之间的关系中间件的详细设计及实验结果分析。第七章对全文工作进行总结,提出了需要进一步研究的问题和下一步的工作目标。2第二章 计算机集群及并行处理技术简介§21计算机集群简介计算机集群简称集群,是一种计算机系统,它通过软件或硬件把多台计算机以特殊的方式连接起来,协作完成指定的任务。集群分为同构与异构两种,它们的区别在于组

14、成集群系统的计算机之间的体系结构是否相同。对于用户而言,使用一个集群系统就像使用一台计算机一样。位于集群系统中的计算机通常称为节点,节点之间通常采用以太网或专用网络连接。 随着计算机技术的发展和广泛的应用,越来越多的依赖于计算机技术的应用系统走进了人们的工作和生活中。在带来方便和效率的同时,也使得各行各业对计算机技术的依赖程度越来越高。随着计算机技术以日新月异的速度发展,尽管单台计算机的性能和可靠性越来越好,但仍然还有许多实际的应用仅靠单台计算机是难以实现的。集群技术使用特定的连接方式,将相对于超级计算机便宜许多的计算机设备结合起来,提供与超级计算机性能相当的并行处理技术。早在七十年代就有人提

15、出可以使用这种集群技术完成并行处理,但是由于受到当时网络交换技术的限制,在性能上集群系统与其他并行处理系统相比相距甚远。直到ATM技术、千兆位以太网技术逐渐成熟的今天,集群系统才具备了与超级计算机相匹敌的能力。目前对集群技术需求最迫切、发展最快的领域主要有:应用、数据库应用等商业计算领域。§22计算机集群的发展背景计算机集群已经出现并运用了十年多了。早期的一种集群技术结构,GPfister定义了一种集群,“包括所有互连的计算机的一个并行或分发系统,它作为一个单一的、统一的计算资源被应用”。几个服务器计算机连到一起成为一个单一的统一的集群,这样使得共享一个计算负载成为可能,而用户或管理

16、员不需要知道其实有几台服务器。例如,如果任何一个集群服务中的资源出现了故障,集群作为一个整体会用集群中其它一台服务器上的资源继续为用户提供服务,不管故障组件是硬件资源还是软件的资源【51。换句话说,当一个资源出现了故障,连到集群服务的用户会经历暂时的性能降低,但不会完全失去对服务的访问。随着更多的对处理能力的需要,管理员可以用一个滚动升级过程添加新资源,在这个过程中集群作为一个整体对用户一直保持在线和可用,升级后的集群性能会提高。微软的市场调查表明,在中、小型企业中,数据库和电子邮件对他们的日常操作变得非常重要,从而对高可用性系统的需求正在增长。安装和管理容易是这个规模的组织的主要需求。同时,

17、微软调查表明,在大企业中对具有高可用性和高性能的基于windows的服务器的需求也正在增长。市场调查的结果导致集群服务作为一个windows操作系统的集成组件发展。集群服务被用于小型和大型的企业,提供运行于Windows2000和WindowsNT的应用程序的高可用性和易管理性。集群服务也提供用于开发新的、集群感应的应用程序的应用界面和工具。§23计算机集群技术的特点计算机集群系统cluster是一种并行或分布式处理系统,由一组相互独立的、通过高速网络互联的计算机组成,像一个单独集成的计算资源一样协同工作,是具有高可用性和高可伸缩性的高性能计算机网络系统。和传统的高性能计算机技术相比

18、,集群技术可以利用各种档次的服务器作为节点,系统造价低,可以实现很高的运算速度,完成大运算量的计算,具有较高的响应能力,能够满足当今日益增长的信息服务的需求。近十年出现了许多不同的支持高性能计算的计算机系统,最常见的系统有基于分布存储的并行处理系统MPP、对称多道处理SMP和集群系统Cluster。MPP以系统的伸缩性见长,SMP的优点是结构简单,可用性好。Cluster的结构在可伸缩性和可用性之间的兼顾与融合使其成为最成熟、适用范围最广的技术方案,在实际应用中可以满足大多数用户的需求。相对于其他并行计算机系统而言,计算机集群系统具有以下主要特点:1可实现单一系统映像,即操作控制、IP登陆点、

19、文件结构、存储空间、I0空间、作业管理系统等的单一化,提高了系统管理与操作的可用性和灵活性。2在集群系统中可以动态的增减节点,从而最大限度的扩展系统以满足不断增长的应用的需要。3能够为用户提供不间断服务,系统可以监控和管理所有节点,自动隔离故障节点并将其任务转移到其他节点,保证整个系统的连续运行;故障节点修复后,重新接管任务。4具有极高的性能价格比,和传统的大型主机相比,集群具有很大的价格优势。5可用性是集群系统应用中最重要的因素,是评价和衡量系统的一个重要指标。§24计算机集群的分类目前应用最为广泛的计算机集群技术可以分为三大类:高可用性集群技术、高性能计算集群技术和高可扩展性集群

20、技术。下面对这三种集群技术做一简单的介绍。1高可用性集群技术高可用性集群,是指以减少服务中断当机时问为目的的服务器集群技术。4随着全球经济的增长,世界各地各种各样的组织对计算机系统的依赖都在不断增加,电子贸易使得商务一周七天24小时不问断的进行成为了可能。新的强大的应用程序使得商业和社会机构对日常操作的计算机化要求达到了空前的程度,趋势非常明显,这需要不间断的、稳定的计算机系统。这种需求的快速增长,使得对系统可用性的要求变得非常重要。现在许多公司和组织的业务几乎完全依赖于计算机系统,任何的当机都会造成严重的损失,关键IT系统的故障可能会导致整个商业运作系统的瘫痪,因此每一分钟的当机都意味着收入

21、、生产和利润的损失,甚至是市场份额的减少。可用性是指一个系统保持在线并且可供访问。有很多因素会造成系统当机,包括为了维护而有计划的当机以及意外故障当机等,高可用性的目标就是使当机时间以及故障恢复时间最小化。2高性能计算集群技术高性能计算集群HighPerformanceComputingCluster,简称HPCCluster,是指以提高科学计算能力为目的计算机集群技术。HPCluster是一种并行计算集群的实现方法。并行计算是指将一个应用程序分割成多块可以并行执行的部分并指定到多个处理器上执行的方法。目前的很多计算机系统可以支持SMP对称多处理器架构并通过进程调度机制进行并行处理,但是SMP

22、技术的可扩展性是十分有限的,比如在目前的Intel架构上最多只可以扩展到8个CPU。为了满足某些”计算能力饥渴”的科学计算任务,并行计算集群的方法被引入到计算机界。著名的“深蓝”计算机就是并行计算集群的一种具体实现。3高可扩展性集群技术高可扩展性集群技术就是带均衡算法的服务器集群。负载均衡集群在多节点之间按照一定的策略算法分发网络或计算处理负载。负载均衡建立在现有网络结构之上,它提供了一种廉价有效的方法来扩展服务器带宽,增加吞吐量,提高数据处理能力,同时又可以避免单点故障。以Web访问为例,后台的多个Web服务器上面有相同的Web内容。每个Web服务器有相同的内容做起来不难,所以负载均衡算法选

23、择是关键问题。负载均衡的作用就像轮流值日制度,把任务分给大家来完成,以免让一个人过度劳累。但是与轮流值日制度不同的是,负载均衡是一种动态均衡,它通过一些工具实时地分析数据包,掌握网络中的数据流量状况,把任务合理分配出去。对于不同的应用环境,使用的均衡算法是不同的。所以均衡算法也就有了多种多样的形式,广义上的负载均衡既可以设置专门的网关、负载均衡器,也可以通过一些专用软件与协议来实现。在数据链路层上实现负载均衡的原理是根据数据包的目的MAC地址选择不同的路径;在网络层上可利用基于IP地址的分配方式将数据流疏通到多个节点:而传输层和应用层的交换Switch,本身便是一种基于访问流量的控制方式,能够

24、实现负载均衡。5§2。5计算机并行处理技术简介并行处理是新一代计算机日本人叫第五代计算机的关键技术之一。在目前,复杂的科学计算,大量的信号及图像处理和严格的高采样率的实时控制等许多领域中的问题,都需要具有很高处理能力的计算机来完成。缩短器件的延迟时间,是提高计算机速度的一个方面,但更重要的一个方面是改进计算机的体系结构,通过在时间上重叠或资源重复来提高并行度,以实现高速处理15t。并行处理计算机系统是指同时执行多个任务或多条指令或同时对多个数据项进行处理的计算机系统。早期的计算机是串行逐位处理的,称为串行计算机。随着计算机技术的发展,现代计算机均具有不同程度的并行性。并行处理计算机主

25、要指以下两种类型的计算机:能同时执行多条指令或同时处理多个数据项的单中央处理器计算机;多处理机系统。随着电子器件的发展,计算机的处理能力有显著提高。但是,仅仅依靠器件的进展而达到的速度提高,远不能满足现代科学、技术、工程和其他许多领域对高速运算能力的需要。这就要求人们改进计算机结构,采用各种并行处理技术,以便大幅度地提高处理速度和解题能力。并行处理计算机的结构特点主要表现在两个方面:在单处理机内广泛采用各种并行措施;由单处理机发展成各种不同耦合度的多处理机系统。并行处理的主要目的是提高系统的处理能力。有些类型的并行处理计算机系统如多处理机系统还可以提高系统的可靠性。由于器件的发展,并行处理计算

26、机系统具有较好的性能价格比,而且还有进一步提高的趋势。现在,并行处理技术几乎成了从工作站到巨型机的所有计算机的基本构筑技术。经常使用的并行处理方式有下列几种:在微处理机内进行命令级的细粒度并行处理的超标量SuperScalar方式及超长指令VLIW方式;在巨型机中使用的运算流水线Pipeline即向量处理机方式;小巨型机、巨型机中使用的多处理机方式。这些处理方式的共同特点是都需要软件的强有力支持。在有效发挥硬件的高处理性能方面,尤其需要软件的支持。由此可见,并行处理技术是一项核心技术,它使组织能够高效地管理和访问TB级的数据。如果不能提供高效的并行处理技术,大型数据库通常用于数掘仓库但也越来越

27、多地出现在业务系统中将不会存在。§26小结本章介绍了计算机集群和并行处理技术的发展、背景及意义,分布式海量数据并行传输采用了计算机集群及并行处理技术,服务器节点呈层叠结构排列,分为调度6节点与子结点。在某个单位中,调度结点只有一个,调度服务器可能在下层搜寻负载最轻的子节点和进行并行操作。子结点有多个,结点数可扩展,增加层内节点数目即可提升系统处理大批量请求的能力。利用并行计算机与集群技术提高数据处理能力,研究并行传输的处理模型和算法,实现任务的优化拆分与分配;研究并行处理机负载与状态监控技术,动态调整系统负载,实现系统负载平衡。§31引言第三章 中间件技术概述随着计算机与网

28、络技术的迅速发展,特别是在应用日益普及的情况下,现代企业信息系统的分布性、异构性和自治性的特征越来越显著,对日常业务活动详细信息的需求日益提高,而体系结构和分布式处理技术被广泛应用,以上这些情况都说明了这样一个事实?集中式信息处理的时代即将成为过去,取而代之的将是大规模的异构分布式信息处理与应用执行环境。企业的信息系统和以往相比,也有了巨大的进步。企业级的应用不再满足于单机系统和简单的客户服务器系统,而是向着三层和多层体系结构的分布式环境不断迈进。在分布式环境中,无论是硬件平台还是软件平台都不可能做到统一。大规模的应用软件通常要求在软硬件各不相同的分布式网络上运行,为了更好的开发和应用能够运行

29、在这种异构平台上的软件,迫切需要一种基于标准的、独立于计算机硬件以及操作系统的开发和运行环境,中间件技术就应运而生了。中间件的引入源于分布式应用的需求,简而言之就是用于连接异构的客户到同一个服务器上的软件总和。中间件能支持各种硬件平台、操作系统、网络数据库,使开发者不必考虑操作系统,提高系统的可靠性和工作效率,降低开发成本并缩短开发周期,从而更快地将产品投放市场。§32中间件的特点中间件具有如下特点16J:1易于集成:中间件能无缝地连入应用开发环境中,应用程序可以很容易地定位和共享中间件提供地应用逻辑和数据,满足大量应用的需要。2易于移植:中间件使与平台有关地细节对于应用程序来说是透

30、明的,因此可以在不改变应用程序代码地情况下改换计算机底层硬件、操作系统活通信协议。3易于演进:中间件实现的功能对应用程序来说是透明的,所以可以对局部进行改进而不会影响到系统的其它部分。4高可靠性:中间件应该是可靠的,需要提供接管和恢复功能,保证事务及关键性业务不被丢失。5易于使用:中间件能和同构或异构环境下的多种数据源通信,同时它能够管理数据|日J的公共逻辑约束。它将用户从复杂的平台、网络、数掘库选择中解放出来。由于标准接口对于可移植性和标准协议对于互改操作性的重要性,中间件已成为许多标准化工作的主要部分。对于应用软件开发,中间件远比操作系统和网络服务更为重要,中间件提供的程序接口定义了一个相

31、对稳定的高层应用环境,不管底层的计算8机硬件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,应用软件几乎不需任何修改,从而保护了企业在应用软件开发和维护中的重大投资。§33中间件的分类中间件的分类方式很多,有些软件在中间件的概念产生以前就已经存在,有些软件虽然不是作为中间件开发出来的,但是符合中间件的定义,也把它归于中间件的范畴。1998年IDE和Giga在各自的报告中给出了中问件的分类,按照IDC的分类方法,中间件可分为六类【7】:终端仿真屏幕转换数据访问中间件远程过程调用中间件消息中间件?交易中间件对象中间件下面,针对上述六类中间件分别加以简要的介绍

32、。1终端仿真屏幕转换用以实现客户机图形用户接口与已有的字符接口方式的服务器应用程序之间的互操作。2数据访问中间件适用于应用程序与数据源之间的互操作模型,客户端使用面向数据库的API,以提请直接访问和更新基于服务器的数据源,数据源可以是关系型、非关系型和对象型。这类中间件大都基于SQL语句,采用同步通讯方式。此类中间件使应用开发简单化,但如果透过广域网使用,则会带来严重的效率问题,因为在低速网上来回交互SQL语句会使通讯流量过大,同时对数据压缩、加密带来不便。3远程过程调用中间件RemoteProcedureCallMiddlewareRPC机制是早期开发分布式应用时经常采用的一种同步式的请求应

33、答协议。通过这种协议,程序员编写客户方的应用,需要时可以调用位于远端服务器上的过程。RPC扩展了过程语言中的“功能调用结果返回”的机制,使得它可以适用于一个远程环境。由于RPC机制是同步方式,因而在工作的时候,要求客户方和服务方均能正确工作才能很好地运行,有一方不能工作将导致RPC失败。在网络故障、机器故障存在的情况下,这一要求是很难保证的。另外,由于大多数RPC机制很难建立点到点的关系,因而也很难用在面向对象的编程当中。4消息中间件Message-OrientedMiddleware越来越多的分布式应用采用消息中间件来构建,通过消息中间件把应用扩展到不同9的操作系统和不同的网络环境。基于消息

34、的机制更多地适用于事件驱动的应用,当一个事件发生时,消息中间件通知服务方应该进行何种操作。其核心安装在需要进行消息传递的系统上,在它们之间建立逻辑通道,由消息中间件实现消息发送。消息中间件可以支持同步方式和异步方式,实际上是一种点到点的机制,因而可以很好的适用于面向对象的编程方式。5交易中间件是专门针对联机交易处理系统而设计的,如银行业务系统、定票系统等。联机交易处理系统需要处理大量并发进程,处理并发涉及到操作系统、文件系统、编程语言、数据通讯、数据库系统、系统管理、应用软件,交易中间件就是一组程序模块,用以减少开发一个联机交易处理系统所需的编程量。6对象中间件ObjectMiddleware

35、传统的面向对象技术通过封装、继承及多态提供了良好的代码重用功能,但是这些对象只存在一个程序中,外面的世界并不知道它们的存在,也无法访问它们。面向对象的中间件就是要解决这些问题,面向对象的中间件提供一个标准的构件框架,能使不同厂家的软件通过不同的地址空间、网络和操作系统交互访问。该构件的具体实现、位置及所依附的操作系统对客户来说都是透明的。§34消息中间件面向消息的中间件MessageOrientedMiddleware,MOM是中间件中非常独特的一类,它支持在一个分布式应用环境中多种用途的消息交换。在分布的计算进程之间,消息是通过消息传递、消息排队两种方法, 以同步或异步方式进行交换

36、的。MOM作为一种基本的中间件,其基本功能就是使分布应用间的通信变得更容易。虽然,MOM支持同步和异步两种方式的消息传递,但它更趋向于使用队列进行异步消息传递。MOM将消息从一个应用发送到另一个应用,使用了队列来作为一个过渡。客户消息被送到一个队列,并被一直保存在队列中,直到服务应用将这些消息取走。这种系统的优点就在于当客户应用在发送消息时,服务应用并不需要运行。实际上,服务应用可以在任何时候取走这些消息。此外,由于可以从队列中以任意顺序取走消息,所以,MOM就可更方便地使用优先级或均衡负载的机制来获取消息。MOM也可以提供一定级别的容错能力,这种容错能力一般是使用持久的队列,这种队列允许在系

37、统崩溃时,重新恢复队列中的消息。基于消息的机制更多地适用于事件驱动的应用,当一个事件发生时,消息中间件通知服务方应该进行何种操作。事件可以是一个请求,也可以只是一种警示。警示到来后,即可进行某种处理,但不需等待应答。使用消息中间件编程采用的是消息中间件的APIApplicationProgramInterface,其可以很好地扩展到不同的操作系统和硬件平台上。消息中间件的核心安装在需要进行消息传递的系统上,在它们之间建立逻辑通O道,由消息中间件实现消息发送。中间件领域目前最热门的技术是异步的消息中间件。异步中间件技术比同步中间件技术具有更强的容错性,在系统出现故障时可以保证消息的正常传输。异步

38、消息中间件技术可以分为两类:广播方式和发布,订阅方式。广播方式把消息分发给系统的所有用户;发布订阅方式可以指定哪种类型的用户可以接收哪种类型的消息。发布订阅方式由于更加智能有效,因而事实上己成为异步中间件的非正式标准捧j。§35MOM涉及的技术中间件覆盖了处于操作系统和应用程序之间的广泛服务,再加上中间件是一个相对较新的软件类别,所以不同种类的中间件的功能并没有被标准化。在目前主要的中间件产品中,每一个产品都包含了不同的功能,所以很难定义出中间件的标准服务。但是,下列一些技术在许多消息中间件产品中都是有用的。消息传递Messaging消息由一个发送者发送给接收者,消息是成块的数据,它

39、至少包括消息体、发送者和接收者。在形式上,消息可表现为一个小的数据包,亦可表现为一个很大的文件。多路复用和排队机带tJMultiplexingandQueuin曲多路复用指一个接收者可以接收多个发送者发来的消息。发送协议SendProtoc01发送协议是一个从发送方向接收方的单向协议,它不需要获得一个从接收方发来的应答。§36消息中间件的发展现状随着信息技术的快速发展,各个行业已经建立起基于广域网络的信息管理体系,应用范围不断扩大,由地方到省,由省到全国。在行业内部,业务信息出基层单位采集,逐渐汇总,数据传输负载巨大。各行业间,业务交互同益频繁,信息资源共享、信息资源的挖掘与利用的需

40、求迅速增长。随着信息交换需求迅速增长,交换信息容量的巨增,系统内部上下级数据库之问的数据传输和不同系统之自J的数据交换已成为信息系统发展的一个瓶颈,建立通用的、快捷安全、可靠而高效的传输通道,开发通用数据传输平台成为确保庞大的网络信息体系正常运转、以及今后发展的关键问题。在同益增长的数据传输与数据交换活动中,数据传输系统面I临两大难题?数据库之间的一致性与数据交换的及时性。由于网络宽带、传输故障、电源、服务器及网络设备故障、数据库及软件系统故障等原因导致系统瘫痪、数据丢失,造成数据库之间数据不一致、系统无法运行;由于需传输的数据量过大、传输耗时过长,造成传输频繁失败,信息更新不及时,影响业务系

41、统的J下常运行。近几年,国内外中间件市场主要被两大国外厂商IBM和BEA垄断,他们在银行、证券、电信等高端行业以及IT等行业中得到广泛应用。前者凭借其在1999年推出的应用服务器WebSphere,扎根金融、证券等行业;后者则是一家专门致力于中间件开发的公司,他的应用服务器产品Weblogic在美国市场占有率超过60,在国内电信及证券行业占据主要地位。消息传输中间件使用队列的方式进行消息管理,通常在进行数据传输时,将数据按照同步或异步的通信方法发送或接收消息。在实际的操作过程中,为了保障消息可靠传输,经常使用诸如消息优先级、断点续传、可靠消息队列、内存队列等技术,有些产品还加入了流量控制、预建

42、连接等功能。MQSefies是IBM公司的商业通讯中间件。MQSeries提供一个具有工业标准、安全、可靠的信息传输系统。它的功能是控制和管理一个集成的商业应用,使得组成这个商业应用的多个分支程序模块之间通过传递信息完成整个工作流程。MQSeries基于由一个信息传输系统和一个应用程序接口组成,其资源是信息和队歹Umessagingndqueuing。MQ能确保信息传输。事实上,MQSefies具有特殊的技术,防止信息重复传送,确保信息一次且仅一次onceandonlyonce传递。TongLINKQ是北京东方通科技公司开发的消息队YUMessageQueuing或消息传送Messagepas

43、 in 的消息中间件。该软件采用应用队列的方式,进行消息的存放和发送。应用队列是应用程序与TongLINKQ系统核心间交换数据的重要通道。TongLINKQ包括了三个队列:一个用于存放发送的消息,一个用于存放接收的消息,再一个用于接口与核心的协调通讯用。对于需要进行可靠传输的消息,该软件采用可靠队列进行传输,也就是将消息登记在可靠队列中,并对消息传送的优先级进行判断,在发送过程中遇到故障时,可以根据可靠队列中登记的信息,重传消息,保证消息的可靠传输。国内外消息中问件技术不断更新,产品正在由CS结构向BS结构过渡。在传输功能方面,国内外流行的消息中间件尚不具备独立传输功能,数据打包与解包、数据压

44、缩加密、传输过程监控等工作需另外编制程序完成,存在着需要二次开发、传输内容发生变动时修改困难、系统运行不稳定、维护工作量大等问题。§37小结本章介绍了中间件技术的产生背景、基本概念、分类以及发展等相关知识。其中,对中间件的一个基本类型?消息中间件MOM的相关概念和发展现状做了较为详细地说明。已有的消息中阳J件为当前流行的分布式应用系统提供了相对安全、稳定的消息传输机制的基础上,也不同程度地存放着一定的共性问题:“二次”开发问题。我们知道,不管是IBM的MQSeries还是东方通的TongLINKQ均是以自身集成的API接口进行编程的,每个公司在进行相应系统的数据传输模块设计时都需要根

45、据不同的系统进行相适应的编程需求,由此带来的资源浪费是不可估计的。其次,对于以上两种占据传输市场较大的消息中间件产品本身的传输机制是以“数据”本身来进行传输的,这种传输形式不可避免的存在着传输信息量过大、易丢失、传输速度慢等问题。分布式海量数据并行传输采用了基于“日志”的传输,传输的上下级之间仅在进行同步传输时,传输两级之间日志发生变化的记录,提高传输速度,与此同时也减少了传输的信息量以及带来的一系列问题,并且进行了相应的封装?建立较为通用的数据传输平台,使用户可以经过一系列的配置来完成适用于本系统的数据传输的子系统,而不再需要进行二次开发。第四章 Sybase的MobiLink技术的传输机制

46、MobiLink是一个基于服务器的同步化引擎,它可以通过串行口、TCPIP、HrrP、HotSync、ScoutSync或ActiveSync连接与远程客户通信。使用像MobiLink这样的通用同步技术可以极大地削减开发费用,因为MobiLink能够处理高级的同步操作,比如瞬象snapshot和时间戳同步、主键维持、冲突的检测和解决等。在服务器端,所有的MobiLink同步逻辑都是通过使用后台数据库的SOL的事件处理的MobiLink通过ODBC连接数据库,所以事实上支持所有的SQL数据库,通过使用Certicom的SSLfFLSPlus来支持公钥加密功能使用椭圆曲线加密系统技术。§41MobiLnk的传输结构MobiLink是基于会话的同步系统,它允许在本地的主数据库与多个远程数据库之间进行双向同步。MobiLink传输结构如图4I所示。图41MobiLink传输结构图以下对传输结构图中的各个部分进行简要地介绍。?统一数据库:统一数据库是用于存储所有数据的,统一数据库内的数据是主要的同步对象,远程数据库只是统一

温馨提示

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

评论

0/150

提交评论