消息中间件在数据交换中的应用研究及其面临的挑战
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
消息中间件在数据交换中的应用研究及其面临的挑战
摘要:简要介绍了消息中间件在数据交换数据交换中的应用,论述了消息中间件所面临的挑战及应对措施:传输消息大小不受限制;同时支持Windows 2000/nt/98/ME等多种操作系统,并能通过配置充分发挥不同操作系统的性能;实现消息队列操作的回滚与提交,使消息进行多级回执;以COM形式提供MQ Clinent API。关键词:数据交换消息中间件消息队列 COM
计算机技术的不断推陈出新,带来了信息化发展的新浪潮,人们感受到了计算机及网络技术所带来的好处,于是对电子化、信息化应用的需求也越来越迫切。信息技术以其强大的渗透力,深入到社会经济生活的各个方面。在商业金融等领域,电子数据交换作为一种新的商务手段正在被广泛使用。数据交换EDI(Electronic Data Interchange)是一种计算机应用技术,根据事先达成的协议,将信息按照一定的标准进行格式化处理,并把这些格式化的数据,通过计算机通信网络在其计算机系统之间进行交换和自动处理。作为计算机通信技术的一部分,EDI可以应用于制造业、运输业、零售业以及卫生保健和政府部门等各种经济部门之中。消息队列中间件MOM(Message-Oriented Middleware)是一种特定的中间件,它利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。1 数据交换的研究与应用现状1.1 国际发展现状及趋势西方发达国家已普遍采用EDI。据统计,1992年底世界上使用EDI的企业超过10万家,95年达到40万家。美国早在60年代初期,就在公路、铁路、海运和空运中应用EDI,而且每年还以100%的速度增长;西欧各国已将EDI应用于汽车、化工、电子、运输、保险、分销零售业中;日本已在销售、贸易、运输、和制造业中广泛使用EDI;新加坡声称95%的贸易用EDI实现。据悉,美国政府及欧洲共同体大部分国家的海关宣布,从1992年起,采用EDI方式办理海关业务,如不采用EDI方式,其手续将被推迟办理,或不再选为贸易伙伴。1996年,亚洲六个国家和地区(中国、日本、印度、马来西亚、菲律宾和中国台湾省)达成协议,将共同开发EDI系统,以便使这些国家和地区在进出口过程中能够实时地采集进出口数据,有效对客户进行管理,减少报关错误。这无疑会加快亚洲国家的EDI建设进程。在欧洲,一些大公司,包括超市连锁公司,已经开始对不开通EDI的供应商实行制裁措施(价格、处理时间、付款方式上实行歧视政策)。新加坡贸易发展局宣布:从1999年1月1日起,所有进出口贸易都必须用EDI方式申报。香港地区从2000年开始全面关闭进出口报关柜台,所有的进出口报关必须通过EDI方式。EDI的发展趋势:(1)应用EDI的行业会增多;(2)EDI 与其他信息传送技术和系统的一体化;(3)EDI技术将受Internet的冲击。1.2 国内发展现状我国也早已经开始重视和普及EDI技术,“八五”抓基础、抓试点;“九五”建立起中国贸易网(China Trade Network),尽快实现与国际贸易网的大联通,全面推行EDI。近几年来,国内方正、中软、启宏科技、南通等软件公司在数据交换平台方面都已经快速发展。方正数码公司2002年提出了面向信息资源整合的跨地域、跨部门应用技术框架,为横跨多个政府机构的服务、监管职能的业务实现和同一机构内多个部门不同业务系统之间的数据整合提供了进行有效转换和交流的安全信息交换平台——方正易畅InfoHub。方正易畅InfoHub安全信息交换平台在信息系统中为终端节点提供安全可靠的消息传输。它采用基于XML技术的消息结构进行信息的表达,存储及传输。而作为封装在消息结构中的消息内容可以是XML格式的信息,EDI格式的信息,或者是采用用户自己定义的格式的信息。由中软网络技术股份有限公司与河南省国家税务局联合开发出《行政管理与监控考核系统》填补了国家办公软件的空白。中软股份在此基础之上建立系统框架,并通过技术框架与功能框架完美结合,使功能不断扩充与完善,完成了《行政管理与监控考核系统》。该系统已经在驻马店市国税局得到了全面的推广与实施,为提升税务行业行政管理水平和质量做出了贡
献。启宏科技电子数据交换平台,不仅为致力于提供数据交换与系统整合功能的软件开发商提供基础开发平台,同时也可直接运用于各种行业及政府公用基础数据交换平台的建设。
2 存在的问题及解决方案目前EDI技术需要解决如下问题:(1)网络通信传输标准:解决异型机、异型网络环境下的信息交换;(2)交易业务格式标准化:交易双方必须使用相同的交易文件格式;(3)语言文字标准化:交易双方应使用相互理解的语言文字进行交换;(4)EDI中心的建立与管理规范;(5)权威性与合法性;(6)安全保密性。随着EDI技术应用的深入,人们认识到:用户将不会再采用大而僵化的通用产品,他们将通过构件集成的方式实现个性化的IT方案。权威市场研究及顾问机构Gartner指出,到2005年,至少70%的新的应用软件将会以构件化的方式基于架构开发而成。所有这一切决定了复杂而僵化的编码式的软件体系即将灵活的构件集成式的软件体系取代。而中间件(Middleware)技术则为构件化应用软件提供了一个实现资源共享的集成平台。
3 中间件技术起步于二十世纪90年代初期的中间件,是一类软件的总称,实现网络互连、应用之间的互操作,与操作系统和数据库并称为三大基础软件。它位于操作系统和应用系统之间,是一种独立的系统软件或服务程序,应用软件借助该软件在不同平台、不同的应用环境之间实现资源共享[3]。中间件是位于平台(硬件和操作系统)和应用之间的通用服务。,这些服务具有标准的程序接口和协议。针对不同的操作系统和硬件平台,它们可以有符合接口和协议规范的多种实现。
中间件所包括的范围十分广泛,针对不同的应用需求涌现出多种各具特色的中间件产品。基于目的和实现机制的不同,将平台分为以下主要几类:消息队列中间件、分布式面向对象中间件和事务处理中间件等。消息队列服务是一种松耦合的分布式应用集成形式[13]。发送者将消息发送给消息服务器,消息服务器将消息存放在若干队列中,在合适的时候再将消息转发给接收者。这种模式下,发送和接收是异步的,发送者无需等待;二者的生命周期未必相同:发送消息的时候接收者不一定运行,接收消息的时候发送者也不一定运行;一对多通信:对于一个消息可以有多个接收者。消息队列中间件最重要的功能是及时提供可靠的消息通信手段。为了能够完成消息的可靠传输,一般情况下,使用队列的方式进行消息管理,也就是说,通常在进行数据传输时,将数据按照用户定义的大小,拆分成若干消息放入消息队列,按照同步或异步的通信方式发送或者接收消息。在当前信息系统工程中,出于功能、安全性、可靠性等方面的考虑,大量使用路由器、交换机、防火墙的网络设备,或使用集群、双机热备份等网络技术,网络结构日趋复杂。为了能够满足网络使用的要求,中间件产品通常可以采用多种方式进行部署,做到系统之间构筑一对一、一对多、多对一、多对多的树型网络结构,使系统配置和管理大为简化,同时也能满足系统数据传输的要求。消息传输中间件的跨平台能力也是中间件的重要指标。为满足异构平台的数据通信要求,消息传输均使用标准的IP包封装,因此中间件产品能做到真正跨平台的数据通信。此外,消息传输中间件通常都提供丰富的API函数接口,可以支持标准C/C++、Microsoft Visual C++、Microsoft Visual Basic、Borland C、PowerBuilder、Java等开发语言,特别是对标准的C/C++和Java的支持,方便在不同应用平台的应用开发,同时实际上也增强了消息传输中间件的跨平台能力。消息队列服务系统服务系统即是把消息中间件技术应用于实践中的一种位于平台(硬件和操作系统)和应用之间的服务程序。消息队列是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的网络空间中的任一位置。其实现原理是:消息的发送者把自己想要发送的信息放入一个容器中(Message),然后把它保存至一个系统公用空间的消息队列(Message Queue)中;本地或者是异地的消息接收程序再从该队列中取出发给它的消息进行处理。在消息传递机制中,有两个重要的概念。一个是消息,一个是队列。消息是由通信的双方所需要传递的信息,它可以是各式各样的媒体,如文本、声音、图象等等。消息最终的理解方式,为消息