




已阅读5页,还剩75页未读, 继续免费阅读
(计算机应用技术专业论文)分布式企业服务总线消息机制的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文 摘要 摘要 企业服务总线( e n t e r p r i s es e r v ic e sb u s ,e s b ) 作为面向体系架构 ( s e r v i c e o r i e n t e da r c h i t e c t u r e ,s o a ) 的重要内容,是企业异构服务互联互 通的基础设施。企业服务总线可在分布式环境中,在面向消息中间件( m o m ) 的 基础上,通过智能化的路南和x m l 数据转换,发送和接收标准格式的消息,从而 达到异构系统下服务的寻找和路由。然而当前企业服务总线是根据静态地址来寻 址,消息路由模式比较简单,消息转换功能也比较单一,使得企业服务总线性能 和功能提升受到制约。论文主要目标足,根据e s b 发展要求和特定的需求,研究 并设计出j t a n gs y n e r g y 的消息机制,从而使j t a n gs y n e r g y 的消息路由更加智 能化,转换功能更加便捷,解决了异构系统集成的最基本问题。 论文研究当前e s b 的消息路由和消息转换发展状况,扩展了传统e s b 消息 机制,在静态的基于行程路南的基础上又提供了动态的基于内容的路由,通过z 语言建模,增加了几种常见的消息路由规则和消息转换模式,从而丰富了消息路 由的方式,增加了消息转换的功能,提高了消息路由和转换的效率。新的消息机 制提供了动态的、智能的路由机制,多样化的消息规则,灵活的消息转换,使e s b 产品性能和功能有很大提高,同时具有高度的重用性、灵活性,适应复杂多变的 环境。 论文重点设计了智能化的消息路由架构和灵活的消息转换体系,并从建模、 流程和配置角度对消息路由规则和消息转换模式进行详细地设计,在此基础上对 基于内容路由的流程进行了重点描述。同时开发了x s l t 图形化工具,方便用户 进行消息转换操作。 关键词:企业服务总线( e s b ) ,消息路由,消息转换,z 语言,消息机制 a b s t r ac t a sac o r ec o m p o n e n to fs e r v i c e - o r i e n t e da r c h i t e c t u r e ( s o a ) ,e n t e r p r i s es e r v i c e b u s ( e s b ) i st h e b a s i ci n f r a s t r u c t u r et or e a l i z ei n f o r m a t i o ne x c h a n g e s a m o n g h e t e r o g e n e o u se n t e r p r i s es e r v i c e s e s ba d d r e s s e st h ep r o b l e mo fs e a r c h i n ga n dr o u t i n g s e r v i c e si nd i s t r i b u t e dh e t e r o g e n e o u ss y s t e m sb a s e do nm 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 n t e l l i g e n tr o u t i n ga n dx m ld a t at r a n s f o r m a t i o n h o w e v e r , t h e r ea r es o m e d r a w b a c k si nc u r r e n te s b ,s u c ha ss t a t i ca d d r e s s i n g ,s i m p l em e s s a g er o u t i n gm o d e l a n dm e s s a g et r a n s f o r m a t i o n ,w h i c hm a k et h ep e r f o r m a n c ea n df u n c t i o n a l i t yo fe s b r e s t r i c t e d t h i st h e s i sa i m st or e s e a r c ha n dd e s i g nt h em e s s a g er o u t i n gm e c h a n i s mi n j t a n gs y n e r g ya c c o r d i n gt oe s bd e v e l o p m e n tr e q u i r e m e n t sa n ds p e c i f i c a t i o n s ,s oa s t om a k et h em e s s a g er o u t i n go f j t a n gs y n e r g ym o r ei n t e l l i g e n ta n dt h et r a n s f o r m a t i o n f u n c t i o nm o r ec o n v e n i e n t t h et h e s i sr e v i e w st h es t a t eo ft h ea r ti ne s bm e s s a g er o u t i n ga n dm e s s a g e t r a n s f o r m a t i o n ,e x t e n d st r a d i t i o n a le s bm e s s a g er o u t i n g m e c h a n i s m ,p r o v i d e s d y n a m i cc o n t e n t b a s e dr o u t i n gi na d d i t i o nt os t a t i ci t i n e r a r y - b a s e dr o u t i n g ,a n da d d s s e v e r a lm e s s a g er o u t i n gr u l e sa n dt r a n s f o r m a t i o n p a t t e r n sb a s e do nzl a n g u a g e m o d e l i n g t h ep r o p o s e dm e s s a g em e c h a n i s mp r o v i d e sd y n a m i c ,i n t e l l i g e n tr o u t i n g m e c h a n i s m ,d i v e r s em e s s a g er u l e sa n df l e x i b l em e s s a g et r a n s f o r m a t i o n ,s ot h a tt h e p e r f o r m a n c ea n df u n c t i o n a l i t yo fe s bp r o d u c th a sb e e ng r e a t l yi m p r o v e d ,a sw e lla s i t sr e u s a b i l i t ya n df l e x i b i l i t y t h ep a p e rf o c u s e so nt h ed e s i g no fa ni n t e l l i g e n tm e s s a g er o u t i n ga r c h i t e c t u r ea n d f l e x i b l em e s s a g et r a n s f o r m a t i o ns y s t e m o u rw o r ki n c l u d e s :d e s i g nm e s s a g er o u t i n g r u l e sa n dm e s s a g et r a n s f o r m a t i o nm o d e li nd e t a i l sf r o mt h ep e r s p e c t i v eo fm o d e l i n g , p r o c e s sa n dc o n f i g u r a t i o n ;d e s c r i b et h ec o n t e n t b a s e dr o u t i n gp r o c e s s e s ;a n dd e v e l o p s ag r a p h i c a lt o o lo fx s l tt of a c i l i t a t eu s e r st or e a l i z em e s s a g e st r a n s f o r m a t i o n k e y w o r d s : e n t e r p r i s es e r v i c eb u s ( e s b ) ,m e s s a g er o u t i n g ,m e s s a g e t r a n s f o r m a t i o n ,zl a n g u a g e ,m e s s a g em e c h a n i s m 浙江大学硕士学位论文图臼录 图目录 图1 1 两种典型的集成模式2 图1 2s o a 参考模型与其他分布式系统架构的关系 5 】5 图1 3e s b 与s o a 的关系7 图2 1j t a n gs y n e r g y2 0 总体架构图15 图2 2j t a n gs y n e r g y 消息机制的架构19 图3 1 消息路由模块的基本结构2 4 图3 2 规范化消息交换的内容2 9 图3 3 同一容器中的基于行程的消息路由3 0 图3 4 不同容器间的基于行程消息路由图31 图3 5 基于行程路由的具体流程3 3 图3 6e s b 应用场景下基于内容路由的体系图一3 5 图3 7 同一容器的基于内容的消息路由图4 0 图3 8 不同容器中基于内容的消息路由图4 2 图3 9 基于内容路由的具体流程4 4 图3 1 0 消息格式4 5 图3 11 消息分离的过程图一4 7 图3 12 消息聚合的过程图一4 8 图3 1 3 消息过滤的过程图4 9 图3 1 4 消息重新排序的过程图5 0 图3 15 消息接收者列表的过程图一51 图4 1 消息转换模块工作流程5 5 图4 2x m l 转换示意图5 6 图4 3x m l 与j a v ao b j e c t 转换示意图一5 7 图4 4 消息格式规范化的过程图5 7 图4 5 消息内容丰富的过程图5 9 图4 6 消息内容丰富的过程图6 0 图5 1 消息机制模块的总体类图6 2 图5 2 读取x m l 文件6 4 图5 3 构造x m l 结构树一:6 4 图5 4 生成x s l t 文档6 5 图5 5 生成多t e m d l a t e 格式的x s l t 文件一6 5 图5 6b 2 c 应用场景的流程图一6 6 i v 浙汀大学硕士学化论文农日录 表目录 表1 1 不同组织对e s b 的定义5 表1 2e s b 的功能列表8 表2 1j t a n gs y n e r g y2 0 功能列表一13 表2 2j t a n gs y n e r g y2 0 功能模块概述15 v 浙江大学硕士学位论文第1 章绪论 第1 章绪论 1 1 引言 1 1 1 课题研究背景 随着信息化程度的不断推进,企业内部出现了越来越多的应用系统。这些应 用系统在一定程度上提高了企业的信息化程度,但也带来了新的困难和挑战,存 在以下一些问题:( 1 ) 缺乏一体化、集成化的信息系统,各个系统由不同的技术 和方法构建而成,没有统一的标准和接口,“信息孤岛”n3 的现象比较严重。( 2 ) 企业内部以及企业之间的各类资源无法实现共享和优化。( 3 ) 应用系统不易改变。 特别是企业信息化建设经过上个世纪末期的高速发展,使得这个问题在企业内部 已经变的越来越严重,如何将众多的“信息孤岛”联系起来,让不同的系统之间 进行信息交互,已经成为企业级应用最关心的问题。这时,企业应用集成 ( 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 往往使用如c o r r a 和d c o m 等组件化的技术进行跨平台、 分布式的程序交互,使得系统整体的拓扑结构相对比较复杂【2 】o 最初企业应用集 成使用的是点对点集成结构( 如图1 1 左) ,但是这种结构存在着严重的隐患:即 随着企业内部的应用系统个数的增加,接口的数目往往将快速增长。这时各个应 用系统之间存在着高度的耦合性,为系统的维护和开发带来巨大的复杂性。如果 需要修改或者升级一个系统的话,就要去修改或者升级与之关联的系统,一直如 此循环下去。需要修改的系统将非常之多。 随着信息技术和控制技术的发展,企业信息化涉及的子系统在迅速增加,点 对点的模式已经无法满足需求这时就试图使用h u b s p o k e 结构( 如图1 1 右) 来解决企业内部的整合问题。但是这种结构也有明显的缺陷。虽然在各个系统之 间设置了类似h u b 的巾问件,充当系统之间的一个智能中转站,但是如果每个系 统或者服务的请求都是由中央h u b 进行中转的话,那么h u b 的负担将非常重,随 着参与者的增加,速度会明显变慢。同时,h u b 一旦出错,整个大的系统将会瘫 浙江大学硕士学位论文第1 章绪论 痪,会显得很脆弱。 行救耀| j 尺2 - i t 拓| j 9 一一p 4 珏罨川 d i j 翮1 隧溺 妙 ,、。j 蝴e 点对点的集成模式h u b s p o k e 的集成模式 图1 1 两种典型的集成模式 为了解决上述集成的问题,企业服务总线( e n t e r p r i s es e r v ic e sb u s ,e s b ) 阳3 的概念在2 0 0 2 年被正式提出。它采用了像h u b s p o k e 结构一样的星型集成体系 结构。但在这种体系结构中,集成中心彳i 是像中央h u b 一样,而是被扩展成可以 分布在多个系统结点上的总线,从而有效解决了h u b - s p o k e 结构中单点失效和效 率的问题。同时又与星型架构不同,e s b 提供了一种分布式的、面向集成服务架 构。这种架构可以对系统中各个功能达到按需部署,而这些独立的功能正式构成 s o a 的一部分。 在应用系统整合中,企业服务总线提供了最基本的通信枢纽,是构建企业应 用整合和集成的必要元素。它支持s o a 中的服务交互并对这些服务进行管理。它 是企业面向服务的架构的基础平台,使得s o a 变的现实可行。因此,设计出适合 业界需求、高性能的企业服务总线已经成为企- k 级集成开发的当务之急。 1 1 。2 课题研究的意义 企业的信息化是实现让各个系统的信息和资源能够共享,提高企业的管理效 率和经营水平,整合企业最广泛的运营资源,消除“信息孤岛”,实现在跨部门 2 p 一 浙江大学硕士学位论文 第1 章绪论 甚至是跨企业之间的最广泛的资源共享和信息数据交换。伴随着企业信息化程度 的提高,迫切需求一个集成的平台,大大降低采取不同系统所带来的重复性开发 和集成的成本,降低企业的风险,提高企业的效率。因此使用面向服务架构的s o a 的企业服务总线能够解决此类问题,以其高度开放型和重用性、灵活性、松耦合 引起了工业界的关注。它能够使应用系统更加灵活,适应各种复杂多变的企业i t 环境,同时又能降低整个运营成本。 企业服务总线既然叫做“总线”,其核心模块就应该是消息机制的模块。e s b 是通过消息机制来整合各个系统。因此如何能够智能地进行消息路由,是提高系 统的灵活性和松耦合的关键,也是解决系统之问的异构和服务重用的关键。 当服务的消费者需要调用一个服务,只需要发个请求,接下来就由企业服务 总线智能地去解析服务调用的要求,并进行服务绑定、消息转换以及之后的消息 路由。这样减轻了企业开发人员的负担,让他们更关注商业逻辑,并且在异构的 环境下能够充分利用现有的系统资源,而不需要去了解各个系统的结构、代码和 接l 。即使当异构系统内部发生变化的时候,也不用重新修改环境或者配置文件, 同样能够做到智能路由,同样能够完成之前设置好的操作。这是一般的服务路由 所不能够解决的。如果是服务的提供者发生变化,同理企业服务总线的智能路由 模块会及时发现这个变化,通过基于内容的路由或者动态查找,使服务调用者尽 可能找到所需要的服务。 同时,消息转换功能是消息路由保持功能多样性的基础保障。在企业服务总 线中路由的消息格式和协议多种多样,这时就需要消息转换功能来转换消息,使 目标服务能够读懂消息。在当前企业集成的异构系统中,经常会出现每个系统支 持不同格式的协议,因此就应该设计出一个功能强大的消息转换模块。通过这个 消息转换模块的消息能根据要求转换,从而达到在异构系统中能够通讯。可以说 消息转换是消息路由的基础。只有消息转换功能强大,才能使得整个消息机制保 持畅通。 从更高的层面上讲,要完成“业务驱动”以及让企h k 服务总线更有效率的使 用,智能路由模块和消息转换模块是重中之重。在一个企业环境中,如何更好地 3 浙江大学硕士学位论文第l 审绪论 进行消息路由,更好进行消息转换,更好地发现服务,提1 亩消息的准确、高效和 安全传递,这给我们提出了一个艰巨的课题。希望通过对e s b 的研究来克服传统 e a i 的不足,从而最终实现面向服务计算环境下动态、灵活的分布式企业应用集 成。 1 2 相关概念的介绍 1 2 1s o a 的概念 从2 0 世纪9 0 年代末g a r t n e r 公司提出s o a ( s e r v i c e - o r i e n t e d a r c h i t e c t u r e :面向服务体系) 概念到现在,s o a 经历近1 0 年的发展。人们对 s o a 的态度从最初的怀疑,发展成为热烈的追捧。s o a 通过服务之间的接口和契 约,将服务之间的不同功能联系起来h 1 。s o a 采用了很多、l k 界所共同遵守的标准 和规范,这种设计体系架构已经逐步成为软件应用系统集成的主流架构。它是一 项引人注目的技术,基于定义明确的接口,促进多个应用程序间的松散耦合交互。 服务的实现是独立的,且刁i 依赖上下文信息以及其他服务的状态。服务间的数据 交换主要基于文本类型的格式,使用基于标准的消息模型。服务自身并不知道服 务提供者和服务消费者之间的通讯交互。 如果系统架构师想采用s o a 的原则来开发系统,则可以让系统变得更加易于 扩展和管理,可以轻松地决定如何集成跨域的功能。例如一个大型公司在并购一 个小公司时,必须决定如何将其相应的信息系统集成到公司整体的系统中。 s o a 本身就是一种软件系统架构,是人们面向应用服务的解决方案的框架, 也就是说s o a 的实现通常与用户的具体需求相关,因此所有的s o a 实现都可以参 考一部分经过实践证明的原则。面向服务的体系架构的参考模型就是关于s o a 的 一个参考模型,由国际标准组织o a s i s 提出的,其目的是提供一个高层次的、适 用于所有s o a 实现的共性要素。图1 2 显示了s o a 参考模型与其他分布式系统架 构的关系。参考模型定义的关系和概念是描述参考模式和架构的基础,而参考模 式和架构又定义s o a 设计的具体类型。具体的架构就是结合了参考架构、模式和 其它需求( 包括技术、环境等) 而构建的。 4 浙江大学硕士学位论文 第l 章绪论 囤 需求 参考架构 f 模式 1 f协议1 lj f配置1 动机 依赖 & 继承 考虑 7 。,。“ i # 翁“i 蒋萌舟 ( 说明 目标 具体架构f 相关模型 l ( 标准 j 输入 体系架构相关工作 z m糍 # i 依赖约束使用 面向服务体系架构实现 、j 图1 2s o a 参考模型与其他分布式系统架构的关系【5 】 尽管s o a 本身的特性还在不断地扩展和进化,但依然可以应付信息系统适应 不断变化的业务需求。s o a 的基础设施本身比传统的一一对应的交互接口更具有 灵活性,因此s o a 可以为企业保持业务的灵活性和适应性提供坚实的基础。 1 2 2e s b 的概念 1 2 2 1 什么是e s b 关于企业服务总线的概念,工业界目前还没有统一的定义,有些认为e s b 是 一种设计架构;有些认为是一种软件产品;有些认为是一些软件产品的组合:甚 至有人认为e s b 就是消息中间件( m o m ) 。表1 1 是不同组织对于e s b 的定义: 表1 1 不同组织对e s b 的定义 _ 兰h 豺震义 企业服务总线是一种企业级别的消息总线,在服务的消费者 i b m 和提供者之间的集成逻辑层上,用消息传输和基于内容的路由的 方式把不同的消息系统整合到一起。阳3 _鬟窳翳鬈*雾麟豢鬟耢黪鬓黎糕瓣毳鬻攀嚣豢嚣籀募嚣纭繁li常盖| 浙江大学硕士学位论文 第1 章绪论 续表1 1 企业服务总线是在s o a 架构中基于各类标准的消息工具,能 t i b c o 通过多种的通信协议调用服务。n 3 企业服务总线是一种新的架构,能够使用w e b 服务、消息中 g a r t n e r 间件、智能路由和转换。企业服务总线通过各种软件服务和应用 组件,形成一个轻量级、大众的集成中枢。阳1 企业服务总线是一个中介,它的核心功能是让重用服务更广 f o r r e s t e r 泛应用,同时增加外部的功能使得e s b 在i t 环境下更好用。阳3 企业服务总线由软件架构组成的,通过事件驱动和基于消息 w i k i p e d i a 引擎为复杂系统提供基础的服务。n 印 经过对e s b 概念和相关产品的调研,我们认为e s b 是构建面向服务体系架构 的中枢神经系统,它主要提供服务或应用的接入,服务或应用间消息的路由,消 息的转换,以及保障消息安全可靠地传递等功能,从而在实现服务或异构系统问 可靠交互的同时,保持它们的松散耦合关系。但是,单独的e s b 产品功能是有限 的,必须与s o a 中其它功能模块结合,才能发挥其作用。 1 2 2 2e s b 与s o a 的关系 虽然e s b 是s o a 的重要组成部分,但e s b 并彳i 等同于s o a ,其与s o a 的关系 如图1 3 所示。图1 3 上部分是i b m 提出的s o a 参考架构( 共9 层) ,而e s b 只 属于集成层。需要强调的是e s b 只提供服务接入、消息路由、消息的转换以及消 息的传递等功能。因此应该将不属于e s b 的功能作为单独产品来实现,从而降低 e s b 本身的复杂度。例如,i b m 、t i b c 0 等公司将e s b 、服务生命周期管理、业务 流程管理等功能作为单独的产品,分别予以实现。 6 浙丈 论女第l 绪论 图1 3 e s b 与s o a 的关系 e l 前,由于s o a 中许多功能模块的实现( 包括e s b 本身) 还没有公认的标准, 因此在实现脚产品的同时必须提供配套的设旌( 如适配器、服务库等) ,从 而保证e s b 的可用性。 l 上0 3 e s b 功能 e s b 经过这么多年的发展,各类e s b 产品为了适应广大用户的需求,以及各 粪e s b 产品的设计人员对企业服务总线更加深入的了解,使得e s b 的功能越来越 相似。根据2 0 0 9 年f o r r e s t e r 的最新调研报告”,大致分为核心功能和扩展功能, 核心功能是e s b 必须提供的,也是大多数产品都提供的;而扩展功能是e s b 在s o a 中实现与其它功能鞋合应用的扩展点。如表12 : 浙江大学硕士学位论文 第1 帘绪论 表1 2e s b 的功能列表 刃髓 支持多种协议,如w e bs e r v ic e s ,r e s t 等 支持协议的转换 数据类型转换和基于内容的路由 支持多种连接方式,包括数据库、消息系统等 通过轻量级的流程编排实现服务组合 支持标准的文件格式 核心功能 集成安全机制 提供错误处理机制 支持同步和异步的操作 可以通过软件或硬件集群的方式实现高可用性 提供上述特性的可选组合 可扩展性 图形化的编辑工具 监控服务的负载均衡 支持b p e l 等业务流程管理 业务活动监控 扩展功能 服务生命周期管理 服务动态部署 复杂事件处理机制 支持规则引擎 浙江大学硕士学位论文第1 章绪论 模型“2 1 ( 如请求响应、发布订阅等) ,支持多种广泛使用的传输协议, 比如h t t p 或j m s 等。 2 ) 基于主题内容的路由:基于主题的路由已经被广泛应用,而基于内容的 路由“们越来越受到关注。基于主题的路由把消息按固定的主题进行分类, 消息的订阅者能够根据主题来获取相应的消息。另方面,基于内容的 路由允许订阅者町以包含业务的部分属性,根据消息的内容而确定路由 到e s b 环境中的相关端点。 3 ) 集成:能够以多种方式来集成服务以及遗留系统,比如数据库适配器、 w e b 服务、各种通信协议转换器等。 4 ) 转换能力:部署到e s b 的各类组件都有固定的消息模型和数据格式,并 且相互之间有所不同。e s b 不同传统中间件的地方之一就是有强大的消 息转换能力,确保任何消息组件接收到的消息类型都是匹配的。因此e s b 可以在异构的消息模式和数据类型的转换中扮演着重要的角色。转化能 力包括x i q l l 消息的存储以及转换,x m l 与非x m l 文件之间的转换,以及 相对应的消息传递技术。n 朝 5 ) 可靠性机制和安全机制:通过建立可靠性机制和异步的方式保证消息能 够正确发送并做出响应,同时对捕捉到的异常进行处理。e s b 提供的安 全管理可以集中控制服务间的安全和信任交互,为授权、认证和消息加 密机制提供了一个灵活的框架,从而保证传输到e s b 的消息是安全和可 靠的。 6 ) 管理:能够对整合的服务和部署的组件进行管理,包括统计日志、生命 周期管理和安全服务等;对e s b 的运行环境进行管理和监控,保证分布 式运行环境的稳定:提供图形化界面或者b p e l 进行业务流程管理。 1 3 国内外现状 上面列举了e s b 的一些基本功能点,基本上都是现在工业界产品差不多都具 有的功能,同时也是学术界所归纳总结的功能。e s b 是s o a 的主要内容,不仅 9 浙汀大学硕士学位论文第1 章绪论 解决了信息系统整合问题,还提供了一个软件的基础体系架构,n 州为以后开发的 各利,面向服务的应用提供自动的集成,当企业的业务需求有变化时,也不需要对 原有系统进行改造,真正达到“按需互连”的效果。3 随着企业服务总线渐渐被大众所接受,各个商也都推出了自己的e s b 产品。 这里的厂商基本分两类;一类是以消息中间件产品起家的,他们通常有比较强大 的j m s 产品,在底层的消息机制方面有比较强的优势;另一类则是前身做企业应 用集成( e a i ) 的,他们在企业业务编排和管理方面比较有心得,在集成方面做 得比较好。基本上他们都宣称自己拥有自己的“企业服务总线”产品,但是由于 现在氽业服务总线没有一个统一的标准,所以各个产品之间有着不大不小的区 别。同时,他们都是面向具体应用的,所以这些产品之间都非常相似。 这些产品在之前的消息路由机制方面都是采用基丁简单配置的静态路由,现 在也开发了动态修改配置的动态路由,同时在基于内容的路由方面都有很大的突 破。在消息转换方面,转换方式变得更加多样和灵活,相对应的转换和映射工具 也开发出来,让用户觉得都很方便。 在学术界,大家都开始关心消息路由和消息转换的扩展以及如何变得更加智 能化。清华大学白晓颖等人对仓业服务总线中的动态路由机制和服务交换进行了 研究,但没有涉及到具体的服务映射和选择算法的支持,以及缺少具体路由机制 的实现u 引。韩国国民大学的g u l n o z az i y a e v a ,e u n m ic h o i 和建国大学的d u g k im i n 研究基于内容的消息路由机制,在复杂系统中动态地选择合适的服务提供者8 | 。 澳大利亚n i c t a 研究中心的y a nl i u 和西北太平洋国家实验室的i a ng o r t o n 等 人也在积极地研究e s b 中的服务路由“制。对于路由表中u r l 表规模大、查找慢的 特点,z o m i t z a 等提出了u r l 签名代替u r l 在路由表的内容,以降低路由表规模, 并通过哈希方法提高路由表查找的速度。心0 1 j b i 规范自从2 0 0 5 年发布以来,一直都没有什么更新。随着e s b 的发展,j b i 规范已经变得过时了,现在虽然还有产品是基于j b i 规范的,比如o p e ne s b 、 s e r v i c e m i x 等,但是它们都在j b i 规范上进行了比较多的修改,使之更适应新的 e s b 需求。在变化最大的地方还是消息路由机制上,因为原有的规则化消息路由 1 0 浙汀大学硕士学位论文第1 章绪论 机制( n o r m a l i z e dm e s s a g er o u t e r ) 在应对复杂系统的时候,显得功能不够丰 富也不够强大。因此,在消息路由上面做得效率更高,做得更加智能化、灵活化, 实现的功能越来越多,同时又是基于标准的,这些已经成为工业界和学术界关注 的焦点。由此可见,未来企业服务总线的变革还是集中在消息路由机制的改变上。 1 4 课题研究的内容 本论文研究的内容背景是浙江大学中间件工程技术研究中心的钱塘( j t a n g ) 应用服务器中的e s b 产品j t a n g s y n e r g y2 0 。同时,钱塘分布式企业服务总 线也是国家支撑项目“现代服务业”的子课题。j t a n gs y n e r g y2 0 是 t a n g 应 用服务器中面向s o a 的e s b 实现,为企业应用集成提供松散耦合、高效、可扩展 的解决方案。主要研制而向制造业、服务业、电子商务、电子政务的中间件平台。 本文是在j t a n gs y n e r g y 开发基础上,研究比较新的路由机制,并根据以往 企业集成的经验设计几种消息规则和消息转换模式,通过提高消息的路由和转换 效率,达到企业服务总线性能的提高。 研究的内容包括: ( 一) 基于行程的消息路由、基于内容的消息路由:有传统的按地址静态寻 址,也有按内容的动态寻址,丰富了路由方式。 ( 二)几种常见的消息规则:通常与消息寻址组合一起,扩展复杂情况的消 息路由,可以丰富消息路由的功能。 ( 三)消息转换的几种模式:主要是协议之间、格式之间的消息转换,增加 了消息转换的功能,提高了消息转换的效率。 1 5 文章结构 本文内容总共分六章:第一章“绪论”,第二至五章为主要内容,第六章是 “总结与展望”。 第一章绪论 介绍本论文的研究背景、意义和主要内容,并介绍了企业服务总线相关概念 和功能,并对当前国内外本文相关功能的研究进行分析,在此基础上提出了本文 浙江大学硕士学位论文第l 章绪论 的研究内容。 第二章氽业服务总线系统介绍 本章中介绍了t a n gs y n e r g y 的具体功能和总体架构。并从功能模块卜进行 分解,引出详细介绍的消息转换和消息路由模块。同时对本文涉及到的相关技术 有所介绍。 第三章消息路由 本章首先介绍了消息路由模块的基本结构,对大致的内容有所了解。随后通 过流程描述,重点介绍两种路由线路的设计:基于行程的路由和基于内容的路南。 最后介绍了几种常见的路由规则,通过z 语言定义、流程描述、路由配置,让读 者对于这几种模式有深入了解。 第四章基于x s l t 的消息转换 本章首先介绍了消息转换的概念,从功能上把消息转换分为三层,重点要介 绍的是消息表现层和消息内容转换层。随后描述了此模块的工作流程,让读者有 个大体了解。最后详细介绍消息表现层和消息内容转换层的设计以及关键细节的 定义,给出转换器的配置。 第五章消息机制的实现 本章首先给出了实现类图,对一些模块有基本介绍。随后介绍了x s l t 图形 化工具的作用和开发细节,对界面上的设计有个初步的认识。最后通过举例某个 应用场景,让读者更加明白企业服务总线消息机制在企业集成中发挥的作用。 第六章总结与展望 对论文的工作进行了回顾、总结,并对后续工作进行了展望。 1 6 本章小结 介绍本论文的研究背景、意义和主要内容,并介绍了企业服务总线相关概念 和功能,并对当前国内外本文相关功能的研究进行分析,在此基础上提出了本文 的研究内容。最后给出本文的文章结构。 1 2 浙江大学硕士学位论文第2 章企业服务总线系统介绍 第2 章企业服务总线系统介绍 本文研究的企业服务总线消息机制的系统基础是浙江大学中间件实验室的 e s b 产品_ j t a n gs y n e r g y 。在本章节将会介绍j t a n gs y n e r g y 以及相关的技术。 2 1j t a n gs y n e r g y 功能 e s b 是构建面向服务体系架构的中枢神经系统,它主要提供服务或应用的接 入,消息的路由,消息的转换,以及保障消息安全可靠地传递等功能,从而在实 现服务或异构系统间可靠交互的同时,保持它们的松散耦合关系。因此根据上述 要求、表2 1 的e s b 功能列表要求、以及具体的用户需求和调研,j t a n gs y n e r g y 2 0 版本实现的功能如表2 1 所示: 表2 1j t a n gs y n e r g y2 0 功能列表 谚喜銎勰 ,l 二孺:,j 允许各种异构系统接入到e s b 中,并将这些系统提供 鏊罐 应用的接入 的功能以服务的形式暴露出来 服务的描述定义服务的接口和地址( 服务端点) e s b 中的服务交互以消息的形式进行,所有服务请求 雾。蠹 消息的封装 核心j 和回复内容都必须封装成统一的消息格式 功巍 消息的路由提供基于行程和基于内容的消息路由方式 支持j a v a 对象和x m l 两种消息格式的数据结构、数 辇,蠹 消息的转换 据类型和数据表现形式的转换 爹j 消息的交换模式 同步、异步等消息交换模式 消息的传递提供安全、可靠的底层消息传递机制 i 服务库提供标准的服务注册、查找、生命周期管理等功能 ;扩展i 窿黝 通用适配器 提供s o a p h t t p 、j 2 e e 、数据库等通用的适配器 1 3 浙江大学硕士学化论文 第2 章企业服务总线系统介绍 续表2 1 提供基于w e b 的系统配置、服务部署、管理和监控等 配置管理工具 功能 图形化开发工具提供图形化的消息转换、消息路由规则的定义工具 屏右音地构 提供支持集群和联邦两季4 ,模式的分布式架构j 川j 、- 木1 实现复杂事件的监控和处理复杂事仟处| 望 * 大学磺 位论文第2 章企n & 务茸战系统升镕 。蛙 腰务信息圈步 清息中问件( j t a n g m q ) j j ;esb容器 o s g i ( e q u i n o x ) + s p r i n g 服务藿诲j 厦务 l _ 一 r ,月 展务注册| 管理 1 一【:一 服务库 臣 图2lj t a n g s y n 哪2 0 总体颦构圈 为了保证系统的可扩展性每个功能模块都封装成0 s g i 的b u n d l e ,模块之 间的依藏关系以0 s ( ;i 的服务方式实现。同时,j t a n g $ t n e r g y20 还引入s p r i n g 框架,可以利用其提供的丰富功能各个功能模块的总体描述如表2 2 所示: 表2 2j t a “g s y n c r g y 2 0 功能模块蕺连 e s b 的整体运行环境,通过容器上下 e 踮容器文信息,协调各模块关系,以及实现分布式架构 e s b 分布式架构的支持。 复杂服务的注册、查询、存储和生命服务的描述 服务目录 周期管理等功能。服务库 库一 务一 暖一 它其 冒豌 最幕 - 件筑 _ 文系 _ 卑 一 括 - 藏 器薪嚣 一柯 一滞: 浙江大学硕士学化论文第2 章企业服务总线系统介绍 续表2 2 提供开发适配器的统一标准和a p i , 应用的接入 包括适配器生命周期管理、服务部 适配器框架署、服务生命周期管理和服务代理等 通用适配器 功能。同时将适配器分类,并提供几 种通用适配器。 根据用户定义的消息处理流程,实现 消息的路由 消息中介功能( 如消息路由、消息转 消息中介 换等) 。同时提供相关接口,允许用 消息的转换 户扩展消息处理功能。 每个适配器和消息处理器都包含一消息的封装 消息通道个消息通道,用于构造e s b 规范化消 消息的传递 息以及消息的发送和接收。 2 3j t a n gs y n e r g y 模块设计 本小节将简略描述e s b 容器、服务目录、适配器框架、消息中介和消息通道 等5 个模块。 2 3 1e s b 容器 e s b 容器( 称为s y n e r g yc o n t a i n e r ) 是j t a n gs y n e r g y 运行环境的一个实 例,适配器框架、消息中介、消息通道等功能模块都在其中运行,同时还保存对 应服务目录的实例( 在分布式的结构中,还保存其它容器的实例) 。e s b 容器的主 要功能是控制整个系统的启动、关闭和协同各个模块之间的关系,提供相关的上 下文信息。 e s b 容器主要通过容器上下文信息的对象为其它模块提供相应的功能,同时 保存其它模块上下文信息的对象。适配器通过容器上下文信息可以获得消息通道 对象、注册服务、查询服务。消息中介模块通过容器上下文信息可以获得消息通 1 6 浙江大学硕士学位论文第2 章企业服务总线系统介绍 道对象。 2 3 2 服务目录 服务的注册与检索是w e bs e r v i c e 技术体系中的一个重要功能。w e bs e r v i c e 以服务提供者、服务注册中心和服务请求者为j 个中心。服务提供者( s e r v i c e p r o v i d e r ) 提供相应的w e b 服务供在线使用,并向服务注册中心( s e r v ic e r e g i s t r y ) 注册相应的w e b 服务信息,即发布服务( p u b l i s h ) ;服务提供者 ( s e r v i c ep r o v i d e r ) 提供相应的w e b 服务供在线使用,并向服务注册中心 ( s e r v i c er e g i s t r y ) 注册相应的w e b 服务信息,即发布服务( p u b l i s h ) ;服务请 求者向服务注册中心发出查询命令( f i n d ) ,服务注册中心会返回相应服务的技术 信息引用,服务请求者根据这些引用可找到真正的w e b 服务及相关的技术信息, 完成服务请求者和服务提供者之间的绑定( b i n d ) 。 这里主要实现上述三者中的服务注册中心的基本功能,包括:服务的注册、 查询和生命周期管理。 2 3 3 适配器框架 要使企业服务总线的功能更加丰富,用户更加上手,除了有好的基础服务之 外,同时需要足够多的上层通用服务来为企业集成业务建模。上层通用服务的一 般功能比如服务的组织和编排、消息格式的转换、各种通信协议之间的转换以及 各类数据集成的适配器。适配器是以动态插件形式,对各种不同数据源提供支持, 它让集成系统不需要知道各种不同数据源的底层逻辑代码,能够屏蔽不同数据源 的底层技术区别,为要集成的数据源提供统一的调用接口,增强了应用和技术协 同1 作的能力。 目前有数据转换的x s l t 适配器,业务流程的b p e l 适配器,与e j b 集成的j 2 e e 适配器,以及消息和数据交互的h t t p s o a p 适配器、文件适配器、数据库适配器 等。 浙江大学硕士学位论文第2 章企业服务总线系统介绍 2 3 4 消息转换 由于企业中的各种应用在开发设计时是相互独立的,导致了各个应用内部所 使用的消息的结构、格式、存储方式乃至传输方式各不相同。这种状况对企业级 应用集成造成了很大困难,强制使所有应用使用统一消息格式不仅实现困难、代
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025历年中招实验考试真题及答案
- 延乔中学分班考试试卷及答案
- 2025教育心理学考试真题及答案
- 重难点解析人教版八年级上册物理声现象《声音的产生与传播》难点解析试题(含答案解析)
- 翻译服务合作协议5篇
- 陕西二建安全b证考试真题及答案
- 解析卷人教版八年级上册物理《声现象》综合训练试题(含答案及解析)
- 考点攻克人教版八年级上册物理声现象《声音的产生与传播》同步训练练习题(含答案详解)
- 广东省建筑b证考试试题及答案
- 金沙二中招生考试题目及答案
- 胖东来收银管理制度
- 等保测评项目技术方案
- 法治及其本土资源
- 《明朝那些事儿》读书分享PPT
- 沪教版(上海)初中数学九年级第一学期-25.3(2)-解直角三角形-课件-课件PPT
- 公出单(标准模版)
- 广告及宣传用品设计申请单
- LY/T 2988-2018森林生态系统碳储量计量指南
- 南航广州a320机队非正常程序流程扩展版
- 高效课堂教学模式培训(数学)课件
- Python基础课件(共282张PPT)
评论
0/150
提交评论