




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)企业应用集成中智能消息中间件的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨理工人学工学硕十学位论文 企业应用集成中智能消息中间件的设计与实现 摘要 中间件技术是企业应用集成中常用的一种方法,而消息中间件( m o m ) 又是 中间件中应用最多的一种。一般的消息中间件对所有消息采用同样的处理,但 消息本身的类型是多种多样的,不同消息对及时性,高速性,可靠性等方面的 要求也不尽相同,这就要求消息中间件能够智能地对不同种类消息做出不同的 处理。 本文首先对企业应用集成环境下的消息中间件做了详细的阐述,介绍它的 消息传递和消息队列两种实现模式,以及点对点和发布订阅两种通信方式。 并在此基础之上,提出了一种智能消息中间件的模型,它以x m l 格式的数据 来做消息传输的载体,能够根据消息的不同类型来自动选择合适的数据传输方 式,以满足不同种类消息的需求。同时给出了该模型的设计思想与功能概述, 对整个软件架构做了详细设计,并在此模型中通过应用和改进持久化队列、滑 动窗口协议、有界缓冲区的互斥访问等相关实现技术来提高了其可靠性。 其次,本文对此智能消息中间件中所用到的消息模型中消息的组成、分 类、表示方法和路由方法等做了详细描述。并对此智能消息中间件的各个主要 功能模块做了详细设计,包括初始化模块的设计、消息发送与接收模块的设 计、消息处理模块的设计、订阅管理模块的设计等。并介绍了消息中间件中消 息转换器和消息适配器的设计方法,发布订阅模式下的消息匹配算法以及其 四种传输方式在此模型中的具体实现方法。 最后阐述了此智能消息中间件的具体实现方法,描述了消息和消息队列的 数据结构、x m l 格式数据的解析方法、接口函数的设计、功能的测试等。并 给出了此智能消息中间件在企业应用集成环境下的应用实例,最后从几个不同 方面分析了其实际应用效果。 关键词企业应用集成;消息中间件;可扩展标记语言;消息队列 哈尔滨理工大学t 学硕上学位论文 d e s i g na n di m p l e m e n t a t i o no fi n t e l l i g e n tm e s s a g e o r i e n t e dm i d d l e w a r ei ne n t e r p r i s ea p p l i c a t i o n i n t e g r a t i o n a b s t r a c t t h em i d d l e w a r et e c h n o l o g yi sac o m m o n l yu s e dm e t h o dl ne n t e r p r i s e a p p l i c a t i o ni n t e g r a t i o n ,a n dt h em e s s a g e - o r i e n t e dm i d d l e w a r e ( m o m ) i st h em o s t w i d e l yu s e di nm i d d l e w a r et e c h n o l o g y a l lt h em e s s a g e sa r eu s u a l l yt r a n s f e r r e dw i t h t h es a m em e t h o di nt h eg e n e r a lm o ms y s t e m h o w e v e r , t h em e s s a g ei t s e l fi saw i d e r a n g eo ft y p e s ,a n dt h em e s s a g e sa l ed i f f e r e n t i nt h et i m e l i n e s s ,h i g h - s p e e d , r e l i a b i l i t y , a n do t h e rr e q u i r e m e n t s s ot h i sr e q u i r e st h em o m s h o u l di n t e l l i g e n t l y d e a lw i t hd i f f e r e n tt y p e so fm e s s a g ew i t hd i f f e r e n tm o d e so fp r o c e s s i n ga n ds e l e c t t h ea p p r o p r i a t em e t h o do ft r a n s m i s s i o n f i r s t ,t h i sp a p e rd e s c r i b e si n d e t a i lm e s s a g e - o r i e n t e dm i d d l e w a r ei nt h e e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o ne n v i r o n m e n t ,i t sm e s s a g e p a s s i n g m o d ea n d m e s s a g eq u e u em o d e ,a n dp o i n tt op o i n ta n dp u b l i s h s u b s c r i b ec o m m u n i c a t i o n m o d e a n do nt h a tb a s i s ,t h i sp a p e r p r o p o s e sak i n do fi n t e l l i g e n tm i d d l e w a r e i tm a k e st h e m e s s a g e st r a n s m i s s i o nb yt h ex m l f o r m sd a t a ,a n dc a ns e l e c ta u t o m a t i c a l l y a p p r o p r i a t ed a t at r a n s m i s s i o nm o d ea c c o r d i n gt ot h e d i f f e r e n tt y p e so fm e s s a g e s , s a t i s f i e st h ed e m a n do fd i f f e r e n tt y p e so fm e s s a g e s t h i sp a p e ra l s og i v e st h e d e s i g n i n gi d e a sa n df u n c t i o ns u m m a r yo ft h em o d e l ,d e t a i l e dd e s i g n so ft h ee n t i r e s o f t w a r ea r c h i t e c t u r e i ti m p r o v e st h em e s s a g et r a n s m i s s i o nr e l i a b i l i t yo fm e s s a g e t h r o u g ht h ea p p l i c a t i o na n di m p r o v e m e n to ft h ep e r s i s t e n tq u e u e s ,s l i d ew i n d o w p r o t o c o l ,m u t u a le x c l u s i o na c c e s so fb o u n d e db u f f e ra n do t h e rr e l a t e dt e c h n o l o g i e s i nt h i sm o d e l s e c o n d ,t h ep a p e rd e s c r i b e st h ec o m p o s i t i o n ,c l a s s i f i c a t i o n ,e x p r e s s i o na n d r o u t i n gm e t h o do fm e s s a g ei nd e t a i li nt h em e s s a g em o d e lr e s o l v e di nt h i si n t e l l i g e n t m o mm o d e l t h ea u t h o ra l s og i v e sd e t a i l e dd e s i g n so ft h em a j o rf u n c t i o n a lm o d u l e s u 哈尔滨理t 人学t 学硕l :学位论文 i nm ei n t e l l i g e n tm o m ,i n c l u d i n gt h ei n i t i a l i z a t i o nm o d u l e ,m e s s a g es e n d i n ga n d r e c e i v i n gm o d u l e ,m e s s a g ep r o c e s s i n gm o d u l e ,s u b s c r i p t i o nm a n a g e m e n tm o d u l e t h ep a p e ra l s oi n t r o d u c e st h ed e s i g nm e t h o do fm e s s a g ec o n v e n e ra n dm e s s a g e a d a p t e ri nt h em o m ,m e s s a g e - m a t c h i n ga l g o r i t h mi nt h ep u b l i s h s u b s c r i b em o d e , a n dt h es p e c i f i ci m p l e m e n t a t i o nm e t h o do fi t sf o u rt y p e so ft r a n s m i s s i o ni nt h i s m o d e l f i n a l l y , t h i sp a p e re x p o u n d st h ec o n c r e t er e a l i z a t i o nm e t h o do ft h i si n t e l l i g e n t m o m ,d e s c r i b e st h ed a t as t r u c t u r eo fm e s s a g ea n dm e s s a g eq u e u e ,a n a l y s e sm e t h o d s o fx m l f o r m a td a t a ,d e s i g n si n t e r f a c ef u n c t i o n s ,t e s t si t sf u n c t i o na n ds oo n a n dt h e p a p e rg i v e st h ea p p l i c a t i o ne x a m p l eo ft h i si n t e l l i g e n tm o mi nt h ee n t e r p r i s e a p p l i c a t i o ne n v i r o n m e n ta n dt h ed e s i g no ft h em a i nf u n c t i o n s ,a n a l y z e si t sp r a c t i c a l a p p l i c a t i o ne f f e c ti nt h ed i f f e r e n tr e s p e c t s k e y w o r d se n t e r p r i s ea p p l i c a t i o n i n t e g r a t i o n ,m e s s a g e - o r i e n t e dm i d d l e w a r e , e x t e n s i b l em a r k u pl a n g u a g e ,m e s s a g eq u e u e i i i 哈尔滨理工大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文企业应用集成中智能消息中 间件的设计与实现,是本人在导师指导下,在哈尔滨理工大学攻读硕士学位 期间独立进行研究工作所取得的成果。据本人所知,论文中除己注明部分外不 包含他人已发表或撰写过的研究成果。对本文研究工作做出贡献的个人和集 体,均已在文中以明确方式注明。本声明的法律结果将完全由本人承担。 作者签名:王舻 日期:加哆年弓月2 j 日 哈尔滨理工大学硕士学位论文使用授权书 企业应用集成中智能消息中间件的设计与实现系本人在哈尔滨理工大 学攻读硕士学位期间在导师指导下完成的硕士学位论文。本论文的研究成果归 哈尔滨理工大学所有,本论文的研究内容不得以其它单位的名义发表。本人完 全了解哈尔滨理工大学关于保存、使用学位论文的规定,同意学校保留并向有 关部门提交论文和电子版本,允许论文被查阅和借阅。本人授权哈尔滨理工大 学可以采用影印、缩印或其他复制手段保存论文,可以公布论文的全部或部分 内容。 本学位论文属于 保密口,在年解密后适用授权书。 不保密五 ( 请在以上相应方框内打4 ) 作者签名:王彬 日期:劫柙年弓月21 日 导师签名黍f 佩策嘞跏年) 月矿 哈尔滨理t 人学t 学硕f 学位论文 第1 章绪论 1 1 课题研究的背景及意义 信息技术和网络技术的飞速发展大大推动了企业的信息化进程。从m r p i i 到e r p 再到c r m ,中间还涉及到办公自动化系统等,这些应用系统作为企业 信息化不同阶段的产物,它们从不同方面对企业的信息化建设起到了巨大作 用。同时,不难看到,随着信息化进程的推进,i n t e m e t 、i n t r a n e t 的发展及分 布式系统的同益流行,很多大型企业已经开发和引进了多种运行于不同操作系 统、异构网络的信息系统,这些信息系统各自执行一定的功能,造成信息组织 缺乏规范化,数据重复采集,“信息孤岛 等现象日益严重。如何整合企业不 同部门间、企业内部与外部间以及企业同企业间现有的信息系统,形成能真正 实现资源、信息共享的信息集成系统以达到各信息系统之间的无缝集成,成为 企业信息化的关键所在。在这种情况之下,企业应用集成( e n t e r p r i s e a p p l i c a t i o ni n t e g r a t i o n ,e a i ) 应运而生。 e a i 是一种全新的战略企业解决方案,它利用通用的中间件( m i d d l e w a r e ) 能够将企业的业务流程、应用软件、硬件和各种标准联合起来,在两个或两个 以上的企业应用之间或者企业与企业的应用系统之间实现无缝集成,使它们像 一个整体或一个系统一样处理企业业务过程心1 。 e a i 在国内只是在最近几年才提到,此前集成中提到最多的概念是计算机 集成制造和现代集成制造。虽然c i m s 和e a i 都是集成,但是两者的侧重点有 很大的不同。c i m s 主要是从理论上来研究集成,而e a i 更注重技术,可以认 为e a i 是企业信息化的必然结果。而国内针对e a i 的研究还处在起步阶段。 中间件是针对异构系统集成整合比较好的方法,这也是目前各类e a i 方案 提供商提供的主要方式3 。中间件( m i d d l e w a r e ) 是基础软件的一大类,属于可复 用软件的范畴。中间件处于操作系统软件与用户的应用软件的中间。中间件在 操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层 的应用软件提供开发与运行的环境,帮助用户灵活、高效地开发、集成、部署 各种复杂的应用系统。 中间件是随着用户业务需求的快速增长及i m e m e t i n t r a n e t 的广泛应用,应 用系统由过去的c l i e n t s e r v e r 两层体系结构逐步发展成三层或多层的体系结构 哈尔滨理工人学工学硕士学位论文 的过程中应运而生的,其示意图如图1 1 所示h 1 。 客户层 业务层 数据层 前台应用程序 业务规则 应用服务器 数据库 ( d a t a b a s e ) ( 用户界面) 中间件 图1 1 具有三层体系结构的应用系统 f i g 1 la p p l i c a t i o ns y s t e mw i t ht h r e e - t i e ra r c h i t e c t u r e 对中间件比较流行的定义是i d g 公司提出的:中间件是一种独立的系统 软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。 中间件位于客户机服务器的操作系统之上,管理计算资源和网络通讯。它提 供通用接口,所有集成应用可以用其相互传递消息,他起到提供一个应用程序 间协调点的作用。每个接口定义了一个由另一个应用程序提供的商业过程嵋1 。 需要说明的是,中间件技术只是部分实现了e a i 的功能,并不等价于 e a i ,传统中间件技术只涉及到e a i 集成层次中的数据层的集成。 而消息中间件是中间件技术中应用最多的一种,并且在市场上出现的大多 数中间件产品也是基于消息中间件的,但目前市场上的消息中间件产品对消息 的处理方式比较单一,不能对不同种类消息进行不同的处理,而在实际应用当 中,消息的种类、类型是多种多样的,不同消息在可靠性、实时性、高速性等 方面的要求也是不同的,这就要求能够有一种能够针对不同消息做出不同处理 的消息中间件,本文就是研究一种智能性的消息中间件来解决企业应用集成中 出现的对各种消息的智能处理问题。 1 2 国内外研究现状 1 2 1 企业应用集成的研究现状 e a i 作为一个研究领域只是最近几年的事,研究领域相对较广。e a i 的定 义最早是由k i m b e r l yk n i c k l e 在a m r 研究中提出的,k n i c k l e 给出了 解释,e a i 是连接不同应用允许信息流动的过程。e a i 的研究主要是方法和实 施,理论上的研究主要集中在业务流程的集成。文献阳1 分析了企业应用集成的 哈尔滨理丁大学t 学硕上学位论文 架构模式,应用这些架构模式可以简化集成。文献盯1 分别从不同的角度研究企 业应用集成的业务流程集成,将企业业务流程重组和工作流引入e a i ,并提出 业务集成将是e a i 的未来方向。文献阳。1 主要研究了基于异步消息的企业应用 集成,分析了异步消息集成的优势。 e a i 在国内只是在最近两年才提到,此前集成中提到最多的概念是计算机 集成制造和现代集成制造。虽然c i m s 和e a i 都是集成,但是两者的侧重点有 很大的不同。c i m s 主要是从理论上来研究集成,而e a i 更注重技术,可以认 为e a i 是企业信息化的必然结果。 为了解决平台异构的问题,国外在9 0 年代初提出了中间件的概念,中间 件是位于平台与应用程序之间的通用服务。消息中间件是e a i 中用得最多的中 间件,也是最高层次的中间件产品。文献岫1 论述了将消息队列应用于商业集成 中,对消息中间件进行集成提供了借鉴。文献协1 13 都阐述了如何使用消息进行 松祸合的集成,其中文献n 仉川还分析了j m s 在e a i 中的应用。 我国企业应用集成才刚刚起步,大多数e a i 停留在数据层,应用集成的投 入和效果差别甚大。现在的企业应用集成主要存在以下三种情况。 1 大型企业利用世界著名公司软件和服务实现集成我国一些大型企业由 于建立信息系统比较早,基本上都走自己开发的道路,当时没有考虑到发展的 需要,所以现在显现出各种平台和数据标准不兼容的问题。对于这种情况,公 司必须采取企业应用集成。这些大型企业一般采用世界著名软件公司的消息中 间件产品,并由软件公司负责实施,公司派人协助实施。但是企业应用集成过 程中也会存在以下问题:中间件产品使用过于复杂,这些中间件产品都适用于 很多复杂系统的应用集成,所以使用起来比较复杂。而且价格昂贵,国外的中 间件产品价格非常昂贵,中小企业望而却步。 2 中小企业使用原有的集成方法有些中小企业还在使用原有的集成方 法,主要是采用人工编码进行集成,而这种方法的开发工作量和开发费用比较 大,开发周期较长、系统维护引用较高,开发质量也不高。 3 有些企业使用国内的软件实现企业应用集成有些企业使用国内生产的 中间件产品进行企业应用集成,这些中间件产品比较成熟,但是相对国外软件 产品来比还有较大的差距。主要是软件产品不稳定,跨平台能力差,主要支持 w i n d o w s 平台的集成,采用j a v a 技术的中间件产品相对较少。除此之外,就是 利用这些软件实施企业应用集成比较困难,因为开发软件的公司对于企业应用 集成了解缺乏,我国现在还很少有专门从事企业应用集成的软件和咨询公司。 哈尔滨理1 = 人学t 学硕十学位论文 1 2 2 消息中间件的研究现状 自中间件诞生以来,其技术发展迅速,市场表现也如火如荼。近几年来, 中间件软件已与操作系统、数据库并列为三大基础软件,中国中间件软件市场 也正朝着正确的方向快速健康地发展。根据易观国际中国中间件市场趋势预 测2 0 0 7 2 0 1 l 研究表明,2 0 1 1 年中国中间件市场规模将达到2 2 亿元,从 2 0 0 7 年到2 0 11 年的市场规模年均复合增长率为1 0 7 3 n 刳。如图1 2 所示。在 中国中间件市场已经形成两个梯队,第一梯队由b e a 、i b m 与东方通科技组 成,他们共同占据了国内市场7 0 以上的市场份额;第二梯队包括国外厂商微 软、甲骨文、s y b a s e 、s u n 、t i b c o 、i o n a 等,也包括国内厂商金蝶、中 创、中关村科技、点击科技等,以及一批国内的大学和研究机构,第二梯队目 前在国内市场中所占有的市场份额己接近3 0 n 引。 图1 22 0 0 7 年2 0 1 1 年中国中间件市场趋势预测 f i g 1 - 2t h e t r e n dp r o j e c t i o no fc h i n am i d d l e w a r em a r k e tf r o m2 0 0 7 2 01l 消息中间件是发展最早也是最基础的中间件,同时也是中间件技术在包括 企业应用集成等实际实用中使用最多的一种技术。目前国外产品主要有b e a 的m e s s a g e q 、m i c r o s o f t 的m s m q 、i b m 的m q s e r i e s 、s o n i c 的s o n i c m q 和 t i b c o 的r e n d e z v o u s 等。而在国内中间件研究开展也比较早,软件企业中也 有一些厂商较早开发出了自己的中间件产品,在消息中间件方面有东方通科技 哈尔滨理t 大学t 学硕十学位论文 的t o n g l i n k q 、中创软件的i n f o b u s q 和i n f o b r o k e r 、金蝶的a p u s i c m q 以及 中软网络的c n tm qs e r v i c e 等。目前这些国产消息中间件绝大部分都是基于 消息队列的,实时消息中间件很少。近年来,国产中间件由于本土化的价格和 服务的优势越来越多地在我国的一些政府部门和企业中得到应用。 现在介绍两种国外和国内具有代表性的产品: 1 i b mm q s e r i e si b m 消息中间件w e b s p h e r em q 凭借着他的技术优势 和市场优势,在消息中间件市场中占据着大量的市场n 引。m q 的结构如图1 3 所示。在w e b s p h e r em q 中,消息由两部分组成:描述消息特征的消息描述符 ( m e s s a g ed e s c r i p t i o n 或m e s s a g e h e a d e r ) ,如:消息的优先级、生命周期、消 息i d 等特征;用户数据部分的消息体( m e s s a g eb o d y ) ,消息体的内容根据不同 的应用环境而不同,它可以是文本文件、x m l 文件、多媒体数据或者是其他 的数据。 1 应用程序ali 应用程序b m q 接口 队列管理器卜_ 叫i 消息队列l 消息队列2 l 一消息通道器 队列管理者a 应用程序cll 应用程序d m q 接口 队列管理器卜_ 叫l 消息队列1 消息通道器 队列管理者b 图1 - 3i b m 的w e b s p h e r em q 结构 f i g 1 - 3i b m sw e b s p h e r em q s t r u c t u r e 2 t o n g l i n k qt o n g l i n k q 是由我国东方通科技公司开发的消息中间件产 品。它是一种面向分布式应用的消息传送中间件,它为网络环境下 c l i e n t s e r v e r 结构的应用系统的开发和运行提供了灵活和易用的平台支持。 t o n g l i n k q 提供多种通讯方式:实时传输、可靠传输、加密传输等。在分布式 的联机事务处理环境中,它担当通讯资源管理器( c o m m u n i c a t i o nr e s o u r c e m a n a g e r ) 的角色,为分布式应用提供实时的、高效的、可靠的,跨越不同操作系 统、不同网络的消息传送服务;在要求可靠传输的系统中,还可以利用 哈尔滨理t 大学t 学硕十学位论文 t o n g l i n k q 作为一个通讯平台,用t o n g l i n k q 提供的可靠传输功能来传递消 息和文件,同时提供其他辅助功能方便系统的开发及使用。 1 3 本文的主要工作与结构安排 本文研究的目的为:根据消息中间件在企业应用集成中的应用背景,在国 内外消息中间件的现状基础上,结合这方面应用研究的最新动态,提出一种智 能消息中间件的设计与实现方案。 文章的主要创新点在于:使消息中间件能基于对消息类型的判断来自动选 择合适的实现模式和通信方式,以使能够满足不同种类消息在传输要求方面的 差异性,提高消息的传输效率。并在设计中将消息中间件的功能进行适当分 离,降低了其在大数据量通信时所带来的处理压力。消息本身采用x m l 数据 格式进行传输,使其能够让不同系统都能识别此消息。 所做具体工作如下: 1 详细描述智能消息中间件的模型,并对此模型的结构做了详细设计, 并对各个主要的功能模块及其中用到的关键技术做了详尽阐述。使其能够针对 不同种类的消息自动选择一种最为合适的数据传输方式,提高了消息传输的效 率,满足了不同消息在实时性,可靠性,高速性等方面的不同要求。 2 在智能消息件内部将基于消息传递方式下的点对点通信方式和基于消 息队列方式下的点对点通信方式设计到消息发送与接收模块中,与基于消息传 递方式和消息队列方式下的发布订阅通信方式所在的功能模块进行了分离, 使它们在不同的能模块中实现。这样一方面提高了消息处理的速度,一方面减 轻了消息中间件处理数据的压力,降低了其成为整个消息传输系统中瓶颈的可 能性。这样的设计可以使消息中间件更加智能有效。 3 在数据的具体传输方面,本文选用x m l 来作为消息传输的载体,以解 决各个信息系统使用不同格式的数据的问题。并对x m l 格式数据的解析做了 详细介绍。 4 来整个研究的基础上,本文对本系统中用到的消息和消息队列的数据 结构做了详细的设计,给出了用于解析x m l 格式数据的类结构和整个系统中 用到的主要接口函数的设计并对其功能进行了测试,还给出了此智能消息中间 件在企业应用集成的实际应用的例子。 全文内容安排和结构是这样的: 第2 章介绍了企业应用集成的相关概念及其实施的必要性和一般方法,并 哈尔滨理工人学工学硕十学位论文 引出了消息中间件的概念,之后介绍了其体系结构、分类与特点,并重点阐述 了消息中间件的两种实现模式及两种通信方式,并说明了各自的优缺点。 第3 章在首先提出了一种适用于企业应用集成的智能消息中间件的模型, 接着介绍了此模型的设计思想及功能概述和其架构设计,详细描述了此模型中 用到的消息模型,包括它的组成、分类、表示方法及消息的路由方法等。并在 此模型中运用了一些旨在提高消息传递可靠性的设计,如持久化队列、改进的 滑动窗口协议、有界缓冲区的互斥访问等。 第4 章的工作重点是对本文所提出的智能消息中间件中各个主要模块做出 详细设计,即对初始化模块、消息发送与接收模块、消息处理模块、订阅管理 模块等做了详细阐述,并对各个模块的处理流程做了详细阐述。给出了消息中 间件的四种传输方式在此智能消息中间件系统中的具体实现方法。 第5 章的工作重点是对此智能消息中间件做了实现并应用于实例。重点放 在消息和消息队列的数据结构的设计、x m l 格式数据的解析方法与实现、各 个主要接口函数的设计和功能的测试以及其在企业应用集成环境下的实际应用 及应用效果。 哈尔滨理t 大学工学硕士学位论文 2 1 企业应用集成 第2 章相关技术简介 2 1 1 企业应用集成概述 企业应用集成( e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,e a i ) 并没有一个精确的定 义,它指的是将企业内部或者企业之间的各个独立的应用系统有效的连接到一 起的一门技术。这些独立的应用系统既包括企业的遗留系统,也包括新建立的 应用系统,它们可能运行在不同的软、硬件平台上,采用不同的技术实现。企 业应用集成的目的在于有效地集成这些不同的应用系统,协调信息在各个系统 之间地流动,使企业的员工、决策者以及业务合作伙伴可以方便地访问企业和 客户的信息数据,实现信息和处理流程共享。更进一步,企业应用集成可以使 企业对整个业务流程做实时监控和灵活的改变,以适应快速变化发展的市场需 求。同时,e a i 技术不仅仅支持在企业内部的应用系统之间的集成,当企业之 间为了支持业务开展需要在企业间的应用系统之间进行互连时,也可以通过 e a i 技术来实现。 企业应用集成不是一个软件产品,也不是一种体系结构,而是一门技术, 一个研究领域。它来自于企业的需求,是为了解决某个特定领域内的问题而出 现的一门技术。e a i 包括的内容很复杂,涉及到结构、硬件、软件以及流程等 企业系统的各个层面,包括平台集成技术、数据集成技术、应用集成技术、业 务流程集成技术和集成标准的研究等。e a i 技术包括中间件技术、业务流程管 理技术、数据仓库技术、x m l 技术及基于j a v a 平台的e j b 、j m s 技术等。 e a i 主要分为三个层次的集成,即: 1 数据层的集成它是e a i 的初始起点,是功能层整合的基础。在具体的 整合需求上,数据整合包含以下几个方面:数据共享、数据迁移、数据复制。 2 业务功能集成它可以通过应用提供商开发的a p i 调用,基于功能业务 组件( b u s i n e s sc o m p o n e n t ) 的方法调用以及目前最新的基于服务( 如b u s i n e s s s e r v i c e ,w 曲s e r v i c e ) 功能调用三种方式实现n5 1 。 3 用户统一界面用户界面的改变是e a i 的最后一步,但是也不是非有不 可的。用户界面的目的就是要让系统最终用户获得系统整合带来的好处。当然 它的实现有赖于下层数据或业务功能的成功整合,否则无从谈起6 1 。用户统一 哈尔滨理t 大学_ 丁学硕上学位论文 界面是整合中最简单的方式之一,一般使用软件用户界面来实现对多个软件的 整合,即改变应用系统的人机界面,以一个新的、友好的、统一的界面供终端 用户使用。 2 1 2 企业应用集成实现技术分析 实现企业应用集成通常的结构主要有点对点结构和中间件结构。 点到点的集成非常容易理解,而且很容易实施,所以在企业集成中应用很 多。很典型的一个点到点集成的例子是:一个应用系统直接利用j d b c ( j a v a d a t a b a s ec o n n e c t i o n ,j a v a 数据库互连) 引用其它系统数据库中的数据。当只 集成两个应用系统时,点到点集成解决方案是不错的选择,但是,当集成更多 的应用时,即出现如图2 1 所示的情况。 图2 1 多系统的点对点集成 f i g 2 - 1p o i n t - t o - p o i n ti n t e g r a t i o no fm u l t i s y s t e m 由图2 1 可见,点到点集成的基础结构是非常脆弱的。每一个应用通过点 到点的联接和其它应用紧密联系。当一个应用系统中的一些改变也许破坏它的 集成,而且,集成点的数量也需要不断增加。例如,5 个应用系统相互集成将 需要l o 个不同的集成点。所以,再多一个应用就很难集成,也很难维护。为 了避免这些问题,就需要一个中间层分离一个应用,也就产生了本文将要讨论 的中间件集成。另一方面,随着信息技术的飞速发展,企业中信息系统的数量 和种类逐渐增多,企业应用集成也变得相对复杂,尤其是e r p 、c r m 等新一 代信息系统的应用,应用集成需要集成更多运行在不同平台上的应用。同时, 有些系统需要采用面向w e b 的b s 结构,由于点到点集成存在的诸多缺点, 所以中间件集成应时而生。中间件在应用集成中的作用是在应用之间提供一个 协调点。中间件提供了一个通用接口,每个被集成的应用通过这个接口相互收 发消息。每一个接口定义了一个由一个应用提供的商业业务流程。图2 2 描绘 了一个利用中间件集成的面向服务的逻辑体系结构。 哈尔滨理工大学t 学硕十学位论文 图2 - 2 基于中间件的集成 f i g 2 - 2i n t e g r a t i o nb a s e do nm i d d l e w a r e 中间件集成能保证在不影响其它应用的同时增加或者代替应用。如果有五 个应用需要集成,只需要有五个集成点。和点到点的集成相比,中间件集成解 决方案更容易支持多应用的集成,同时也需要更少的维护。此外,中间件在应 用系统传输数据时能完成复杂的功能:传输,聚集,分离和转换所传输的消 息。中间件集成也是不完美的,实施中间件集成的初始阶段相对复杂,而且将 现有应用转换为使用中间件a p i 也是非常麻烦的。但是相对于整个企业应用集 成的可维护性和应用集成的性能相比,这些缺点是可以忽略的。中间件集成正 在逐渐代替点到点集成而成为企业应用集成的标准。 而在中间件技术中应用在企业应用集成中最主要的就是消息中间件,使用 消息中间件进行应用集成与使用人工编程方法进行集成的比较如下。 1 开发工作量和开发费用方面业务逻辑程序应用逻辑程序在总程序量 中只占3 0 ,而像中间件一类的基础程序约占7 0 。如果使用中间件,仅此一 项就可以节省2 5 6 0 的开发费用。如果以新一代的中间件产品来整合应 用,同时配合可复用的商务对象构件,则开发费用可节省至8 0 。 2 开发周期方面使用消息中间件可缩短开发周期5 0 7 5 。 3 系统维护方面每年维护业务逻辑程序应用逻辑程序的开支,需要最 初开发费用的1 0 2 0 ,而每年用于维护编码的费用,大约需要最初开发费 用的1 5 2 5 。 4 开发质量方面自行编码实现集成,通常是根据应用系统的当前需求量 身定制,应用系统每增加一个新的模块,编码常常需要随之进行相应改动。而 中间件在接口方面都是清晰和规范的,规范化模式可以有效保证应用系统质 哈尔滨理工人学工学硕士学位论文 量,并减少新旧系统维护开支。 基于消息中间件的企业应用集成才刚刚开始,因此研究消息中间件,并将 其应用到企业应用集成中就显得十分重要。 2 2 消息中间件 2 2 1 消息中间件概述 面向消息中间件是出现最早,也是最基础的中间件n ,目前对消息中间件 的定义还没有一个统一的行业标准,其中笔者认为比较好的定义是: 面向消息中间件( m e s s a g e 。o r i e n t e dm i d d l e w a r e ,m o m ) t 旨 的是利用高效可 靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系 统的集成引。 总的来说,面向消息中间件( 以下简称消息中间件) 的作用是使分布式系 统中的各个软件进行平台无关的数据交流,并基于消息通信来进行系统的集 成。一般来讲,消息中间件应该具备可靠的消息传送服务,不同平台数据翻译 功能以及安全性、错误恢复、路由等功能,除此之外,还须提供一套简单易用 通用的a p i 编程接口供应用程序开发人员使用,以降低程序的开发周期和复杂 度,提高整个系统的可靠性。 消息中间件最典型的应用环境包括:有许多程序,特别是混合多种语言; 多个数据源以及异构的数据库;应用的生命周期期望在3 年以上;处理的高吞 吐量,复杂的系统设计;在客户服务器天地中存在“老的 或者已有的应 用;将进行系统的增强、增加和修改;复杂应用间的通信,如既有企业内部的 通信,又有企业间的通信等n 9 。 由此可见,消息中间件的主要作用和特点是通过提供消息传递和消息排队 模型,在分布环境下扩展进程间的通信,并支持多通讯协议、语言、应用程 序、硬件和软件平台。 消息中间件的一种典型结构如图2 3 所示。消息中间件是一种特别的中间 件,它支持通用消息在分布应用环境中进行交换。在这个环境中数据以消息的 形式进行交换,消息同时支持在分布的应用环境中以同步或异步的方式进行交 互。消息中间件系统通过提供目录服务,安全服务和管理服务等支持消息来确 保消息队列的可靠性。m o m 主要是基于客户机服务器结构的,通过允许应用 分布到不同的异构的平台来提高系统的互操作性和弹性,降低了开发多操作系 哈尔滨理下大学工学硕l 学位论文 统和多网络协议的应用的复杂性,把开发者和不同操作系统以及网络接口a p i 函数等的细节问题隔离开了啪1 。应用程序a 和应用程序b 不但处于不同的机 器之上,而且可能在运行环境,实现方法方面等有很大的差别,但只要将其与 消息中间件相连并有网络使两者互联,则两个应用程序就可以像是运行在同一 台机器上的应用程序那样进行通信。消息中间件就像一个黑盒子一样将两者的 不同都隐藏起来了,从外界看来好像两个程序之间是没有差异的。 应用程序a 应用程序b ii 消息中间件接口消息中间件接口 l1ll 发送队列接收队列发送队列 接收队列 i1lj 通道代理 通道代理 ii 网络 图2 3 消息中间件的典型结构 f i g 2 - 3t h et y p i c a ls t r u c t u r eo fm e s s a g e - o r i e n t e dm i d d l e w a r e 消 息 中 间 件 消息中间件技术的发展趋势主要体现在以下几个方面:一方面,因为缺少 一个开放的消息标准已经成为消息中间件被大范围使用的一个主要障碍,为帮 助消息中间件建立开放的标准,一个称为消息中间件组织( m e s s a g eo r i e n t e d m i d d l e w a r ea s s o c i a t i o n ,m o m a ) 心己经建立。m o m a 是一个国际化的非盈利 组织,其致力于推广基于消息模式的应用,为分布计算提供多平台,多层次的 消息传输和消息队列服务。目前各厂商正根据x o p e n 组织定义的分布式事务 处理参考模型( d t p ) 来建立统一的消息中间件的技术标准乜引。此外,大量支持 分布计算的新标准不断出现,这些标准包括j a v a 消息服务( j m s ) ,可扩展标记 语言( x m l ) ,简单对象访问协议( s o a p ) ,语用通用多点传送( p g m ) 。因此如 何将各种标准融合在一起,解决不同厂商产品在性能,扩展性,管理和健壮性 哈尔滨理1 = 人学工学硕十学位论文 等方面的差异性,仍有较长的路要走。中间件技术发展的另一个趋势是基于消 息的中间件( m o m ) 和基于对象的中间件( o o m ) 的统一,产生事务处理消息中 间件。现在这种技术还处于试验阶段扭引。 随着消息中间件技术的发展,消息中间件的应用前景会越来越广阔,将会 脱离数据传输的范畴而成为一种新的应用模式;用消息驱动使异步更合理更优 化;用消息队列来实现负载均衡机制也是一个很好的理念。此外,之后消息中 间件将重点在以下几个方面得到发展:消息传输的可靠稳定性方面、消息的大 小不受限制方面、消息中间件处理高并发服务能力方面等乜引。本文也将对这几 方面进行深入的研究。 2 2 2 消息中间件的分类与特点 消息中间件的主要功能是实现消息的快速、可靠传输,根据对消息处理的 不一样,消息中间件可以分为三大类: 1 集中式类似于电子邮件服务器,该类消息中间件中所有消息发送者都 会把需要传输的消息发送到系统统一的消息处理服务器,消息处理服务器在合 适的时候再将消息转发给消息的接收者。类似的系统有:m i c r o s o f t se x c h a n g e s e r v e r 。 2 传递式通信的时候,发送者不需把消息发给统一的消息处理服务器, 而是直接发给接收者。该类中间件能够提供快速,面向无连接的消息传输,而 且发送者不需要阻塞等待。 3 队列式该类消息中间件采用队列作为消息的暂时存放地,发送者把消 息插入到发送队列,接收者从接收队列接收消息。使用队列技术不仅能够像传 递式消息中间件那样进行快速的消息传输,而且还能够对消息进行保存,在系 统和网络故障时可以保证消息的正常传输。 消息中间件可在分布式环境下扩展进程间的通信,并支持多通信协议、语 言、应用程序、硬件和软件平台,根据本文在前面所描述的,消息中间件概括 起来它具有以下几个特点: 1 提
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工培训计划与资源模板
- 多项目管理统筹的标准化流程
- 2025内蒙古鄂温克族自治旗融媒体中心多元化岗位招聘2人考前自测高频考点模拟试题及答案详解(新)
- 改编音乐的考试题及答案
- 医师卫生职称考试试题及答案
- 2025福建省市场监督管理局直属事业单位招聘高层次人才20人考前自测高频考点模拟试题及答案详解(典优)
- 2025年北京高教岗前培训考试题及参考答案
- 2025年保育员鉴定题库及答案
- 守秘义务与信息安全保障保证承诺书9篇
- 项目成本分析与控制工具包
- 2025至2030中国海带胶行业发展趋势分析与未来投资战略咨询研究报告
- 孕产妇全程保健指南
- 航空理论教学课件
- 【MOOC答案】《VLSI设计基础(数字集成电路设计基础)》(东南大学)章节作业慕课答案
- 中国儿童食管狭窄诊治专家共识解读 2
- 注塑质量管理办法
- 数字治理培训课件
- 军品配套项目管理办法
- TCSF00782023森林草原消防无人机巡护作业技术规程
- DB62∕T 4964-2024 地质灾害精细调查技术规范
- 2025年七一党课-作风建设永远在路上学习教育党课
评论
0/150
提交评论