




已阅读5页,还剩109页未读, 继续免费阅读
(管理科学与工程专业论文)企业服务总线ESB在SOA中的应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 摘要 “信息孤岛 催生企业应用集成技术e a i ,但是在分布式的网络拓扑结构、跨 平台的应用程序交互、私有的非标准化的组件连接协议面前,e a i 难以满足灵活性、 适应性、可重用性、可扩展性等系统集成需求。s o a 应运而生,作为一种构造分 布式系统的方法,s o a 将业务应用功能以服务的形式提供给最终用户应用或其他 服务,构造出灵活的以服务为中心的架构,最大程度地减少系统间的耦合,提高 可重用性,并便捷地共享系统之间的数据。为了更有效地管理和重用系统服务, 企业服务总线e s b 被引入到s o a 实践中,e s b 在s o a 中充当服务间智能化的集 成与管理中介,使s o a 实施又向前迈了一步。 论文首先介绍了s o a 及其相关知识,着重对e s b 相关理论进行了总结和阐述, 并讨论了e s b 与s o a 之间的关系,明确了e s b 在s o a 中的角色和引入时机。然 后,笔者以当前主流的e s b 产品为切入点,深入分析了如何为企业的s o a 部署选 择合适的e s b 解决方案。 论文以实际的分布式、多应用系统集成、跨语言的应用场景为例,实践了如 何在s o a 中使用e s b 管理和调度服务,同时实践了异构平台的互操作性,取得了 预期的实验效果。 最后总结了论文所做的主要工作并展望了s o a 及e s b 的发展方向,同时指出 论文存在的不足,并提出今后研究的方向。 论文对e s b 在s o a 中的应用研究,对于企业的s o a 实施能起到一定的启示 作用。 关键词:s 0 ;e s b ;f a c a d e 模式;0 r a c i es e r v i c eb u s 英文摘要 a b s t r a c t q n f o r m a t i o ns i l o s l e dt oe 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 nt e c h n o l o g y ( e 址) ,b u t i nt h ef a c eo ft h ed i s t r i b u t e dn e t w o r kt o p o l o g y , c r o s s - p l a t f o r ma p p l i c a t i o ni n t e r a c t i o n a n dn o n s t a n d a r dp r o t o c o l s ,e a ic a n tm e e tt h ei n t e g e r a t i o nd e m a n ds u c h 嬲f l e x i b i l i t y , a d a p t a b i l i t y , r e u s a b i l i t ya n de x p a n s i b i l i t ye t c h e n c es o ae m e r g e d 嬲ag o o dm e t h o dt o m a k eu pd i s t r i b u t e ds y s t e mw h i c hd e s i g n st h eb u s i n e s sa p p l i c a t i o n 嬲s e r v i c ea n d c o n s t r u c t e df l e x i b l es e r v i c e o r i e n t e da r c h i t e c t u r es o a st om i n i m i z et h ec o u p l i n g b e t w e e ns y s t e m s ,i m p r o v er e u s a b i l i t ya n de a s i l ys h a r ed a t a f o re f f e c t i v e l ym a n a g i n g a n dr e u s i n gs e r v i c e ,e n t e r p r i s es e r v i c eb u s ( e s b ) b e g i n st ob eu s e di ns o a i m p l e m e n t a t i o n e s bs e r v e s 嬲a ni n t e l l i g e n ti n t e g e r a t i o na n dm a n a g e m e n ta g e n c y b e t w e e ns e r v i c e s ,m a k i n gs o a p r a c t i c eas t e pf o r w a r d t h i sp a p e rf i r s ti n t r o d u c e ss o ar e l a t e dk n o w l e d g e ,m a i n l ys u m m a r i z i n ga n d e x p a t i a t i n ge s br e l a t e dt h e o r i e s t h e ni td i s c u s s e st h er e l a t i o n s h i pb e t w e e ne s ba n d s o a ,v e r i f yt h er o l eo fe s ba n di t ss t a r t e dt i m i n g a f t e rt h a t ,w i t ht h ep o p u l a re s b p r o d u c t s 硒b r e a k t h r o u g h , t h ep a p e rd e e p l ya n a l y z e sh o wt oc h o o s ea p p r o p r i a t ee s b p r o d u c t sf o rs o ad e p l o y m e n t t a k i n gt h ed i s t r i b u t e d ,m u l t i p l ea n dc r o s s l a n g u a g e a p p l i c a t i o ns c e n a r i o sf o re x a m p l e ,t h i sp a p e rp r a c t i s e sh o wt od e p l o ya n dm a n a g e s e r v i c ei ns o ai m p l e m e n t a t i o n 谢t l lt h eh e l po fe s b i nt h em e a n w h i l e ,t h ep a p e r p r a c t i s e st h ei n t e r o p e r a b i l i t yo fh e t e r o g e n e o u sp l a t f o r m sa n dg e t st h ee x p e c t e dr e s u l t s i nc o n c l u s i o n , t h ep a p e rl o o k sf o r w a r dt ot h ed e v e l o p m e n to fs o aa n de s b a t l a s t ,t h ep a p e rp o i n t so u tt h ei n s u f f i c i e n c i e so f t h e r e s e a r c h i n ga n dp u t sf o r w a r dt h ek e y p o i n t so ff u r t h e rs t u d y t h er e s e a r c ho na p p l i c a t i o no fe s bi ns o ac a np l a yar o l eo f e n l i g h t e n m e n ti ns o ai m p l e m e n t a t i o n k e yw o r d s :s o a ;e s b ;f a c a d e ;o r a c l es e r v i c eb u s 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果,撰 写成硕士学位论文“全些盟釜总线( 星s 旦在墨坠主的座旦婴究:。除论文中已经 注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在文中以明 确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已经公开发表 或未公开发表的成果。本声明的法律责任由本人承担。 学位论文作者签名: 学位论文版权使用授权书 本学位论文作者及指导教师完全了解大连海事大学有关保留、使用研究生学 位论文的规定,即:大连海事大学有权保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本 学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位论文。同意将本学位论文收录到中国优秀博硕士 学位论文全文数据库( 中国学术期刊( 光盘版) 电子杂志社) 、中国学位论文全 文数据库( 中国科学技术信息研究所) 等数据库中,并以电子出版物形式出版发 行和提供信息服务。+ 保密的论文在解密后遵守此规定。 本学位论文属于: 保密口在年解密后适用本授权书。 不保密口( 请在以上方框内打“) 论文作者虢嗯唯导师繇珊拟 日期:年月日 企业服务总线( e s b ) 在s o a 中的应用研究 第1 章绪论 1 1 课题研究背景与意义 信息化的发展给企业带来难得机遇的同时也带来了新的挑战,巨大的投资为 企业建立了众多信息系统,帮助企业进行内外部业务处理和管理。然而这些系统 可能由不同的品牌导入实施,只关注各自领域内的数据与业务处理,缺少相应的 接口标准和规范,各自为政,相互之间无法进行信息共享和业务集成,形成“信 息孤岛【1 j ,。 随着企业规模的不断扩大,应用系统不断增加,企业迫切需要一种集成方法, 将各种旧的应用系统和新的应用系统集成起来,企业应用集成( 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 不能很好的 满足企业集成的需求,使用如c o r b a 和c o m 等组件化技术进行分布式、跨平 台的程序交互,系统整体拓扑结构较为复杂,组件的连接协议私有、非标准化, 随之而来的是集成方案缺乏必要的灵活性和适应性、可扩展性差、忽视组织的流 程设计和集成、缺乏合理的粒度规则等诸多问题【2 】。 面向服务架构( 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 ) 带来了一种新的集成思 想。作为一种构造分布式系统的方法,s o a 将业务应用功能以服务的形式提供给 最终用户应用或其他服务,构造出灵活的以服务为中心的架构,最大程度地减少 系统间的耦合,提高可重用性,并便捷地共享系统之间的数据【2 】。 w e bs e r v i c e s 是实现s o a 的一种方式,甚至可以说是现下最好的一种方式。 它完全基于标准的分布式通信技术,以x m l 技术为基础,独立于操作平台和编 程语言,是真正意义上的中立技术。使用w e bs e r v i c e s 可以使异构环境下的信息 系统互相操作。但是,如果仅仅封装独立的服务,而没有一个统一管理服务的中 介,那么服务请求者和提供者之间仍需点对点的显式调用,这就意味着一个服务 被发现和定位之后就被耦合到另一个服务上,这无疑不是一个典型的s o a 架构。 企业服务总线( e n t e r p r i s es e r v i c eb u s ,e s b ) 的出现为s o a 注入了新的活力, e s b 在s o a 中充当服务间智能化的集成与管理中介,是逻辑上与s o a 所遵循的 基本原则保持一致的服务集成基础架构,它提供了服务管理的方法和在分布式异 第1 章绪论 构环境中进行服务交互的功能。可以说,e s b 是特定环境下( s o a 中) 实施e a i 的方式。 e s b 的先进性在于:作为s o a 的一个最好的切入点,e s b 的出现改变了传 统的软件架构,可提供比传统中间件产品更为廉价的解决方案,同时可以消除不 同应用之间的技术差异,让不同的应用服务器协调运作,实现了不同服务之间的 通信与整合。从功能上看,e s b 提供了事件驱动和文档导向的处理模式,以及分 布式的运行管理机制,它支持基于内容的路由和过滤,具备了复杂数据的传输能 力,并可以提供一系列标准接口。 本文希望通过对e s b 在s o a 中的应用研究,最终达到为面向服务环境下动 态、灵活的分布式企业应用集成提供启示的目的。 1 2 国内外研究现状 大约在2 0 0 3 年中,s o a 的概念逐渐进入人们的视野,一时间,众人乐此不 疲地发表对s o a 的看法,s o a 成为i t 尤其是软件开发及系统集成领域的热门话 题f 3 】。 b e a 、i b m 、o r a c l e 、m i c r o s o f t 等业界巨头纷纷发布自己的s o a 战略, 建议用户在进行企业i t 建设时考虑s o a 。随着对s o a 实践的深入,这些巨头们 纷纷加大了对e s b 的投入力度,并声称自己的s o a 解决方案因此而更加完善, e s b 成为厂商在s o a 竞争中的焦点。 i o n a 公司大中国区总裁薛志勇表示,采用i o n a 的e s b 产品a r t i x 作为s o a 的切入点,可使企业以最小的投入将已有系统纳入s o a 架构。薛志勇称,目前 e s b 是s o a 集成中最普遍采用的方法,传统的e a i 是以“服务器 为中心、以 “h u b ”为形式的解决方案,虽然解决了“信息孤岛”问题,但投资大、见效慢 且不灵活。 b e a 推出了a q u a l o g i cs e r v i c eb u s ( a l s b ) 等来加强e s b 产品线;i b m 在 原有w b im e s s a g eb r o k e r 、w a s6s i b u s 等集成产品之外,又推出了独立的 w e b s p h e r ee s b 产品;o r a c l e 在2 0 0 7 年将e s b 产品内嵌在其业务流程管理产品 中,2 0 0 8 年就推出了独立的o r a c l ee s b 产品,收购b e a 之后,将a l s b 与o r a c l e e s b 相融合产生的o s b 则以更强大的功能提供了无与伦比的服务质量。 2 企业服务总线( e s b ) 在s o a 中的应用研究 e s b 是传统中间件技术与x m l 、w e bs e r v i c e s 等技术相结合的产物,对企业 而言,采用e s b 作为企业级信息系统整合方案中的中枢技术,可以无须添加任何 软硬件设备,就可把过去、现有和未来的i t 系统整合在企业级的信息应用框架下, 并且能为企业提供实时、大容量的信息通信和实时控制、管理和分配消息传递的 能力【4 】。 e s b 的兴起让s o a 的渐进之路可以走得更开放和平稳,e s b 也代表了中间 件产品本身的进化方向,从应用领域而言,由于e s b 是基于开放的w e b 服务而 来,在s o a 的发展过程中,e s b 已经当仁不让地挑起大旗5 1 。 1 3 论文章节结构 第1 章绪论 主要介绍了课题研究背景和意义,结合国内外的研究现状,阐明了课题的发 展前景。 第2 章企业服务总线核心知识 对e s b 所涉及到的核心知识进行了详细阐述,着重介绍w e bs e r v i c e s 和e s b , 同时深入理解s o a 、e s b 、w e bs e r v i c e s 等重要概念之间的关系,明确e s b 在s o a 中的地位和作用以及在s o a 实践中的引入时机。 第3 章e s b 解决方案选型 研究开源e s b 产品和商业e s b 产品的优劣特性和适用场景,然后分析和比 较主流e s b 产品的功能和适用条件,以资为企业实施s o a 战略中的e s b 产品的 选择做出提示和点拨。 第4 章o s b 在s o a 中的应用 首先以实际的分布式应用场景为例,介绍在不使用e s b 的情况下,如何实现 s o a 中w e bs e r v i c e 的部署和调度。然后着重以o r a c l es e r v i c eb u s 为例,介绍如 何基于o s b 实现w e bs e r v i c e 的开发、部署和测试,最后实践o s b 中异构系统的 互操作性。 第5 章总结与展望 对论文的研究工作进行了总结,指出了论文中存在的不足,提出下一阶段的 研究方向。 3 第2 章企业服务总线核心知识 第2 章企业服务总线核心知识 谈到企业服务总线e s b ,人们自然会联想到两个关键词:集成和s o a 。的确, e s b 正是集成技术和s o a 理念相融合的产物【6 】。 本章将以s o a 理念为切入点,以e s b 为重点,同时适当介绍w e bs e r v i c e s 技术、s c a s d o 规范,辨析s o a 、e s b 、w e bs e r v i c e s 等核心概念之间的关系, 条例清晰地梳理e s b 的整个知识体系,为后文运笔做铺垫。 2 1s o a 理念 1 9 9 6 年,g a r t n e rg r o u p 最早提出s o a 理念,其基本思想是以服务为核心, 将企业的i t 资源整合成可操作的、基于标准的服务,使其能被重新组合和应用。 g a r t n e r 为s o a 描述的远景目标是:让i t 变得更有弹性,以更快地响应业务单位 的需求,实现实时企业( r e a lt i m ee n t e r p r i s e ) 。 对于s o a ,业界尚没有统一的定义,一般认为:s o a 是一个组件模型,它将 应用程序的不同功能单元服务( s e r v i c e ) ,通过服务间定义良好的接口和契约 ( c o n t r a c t ) 联系起来。接口采用中立的方式定义,独立于具体实现服务的硬件平 台、操作系统和编程语言,使得构建在这样的系统中的服务可以使用统一和标准 的方式进行通信。这种具有中立的接口定义( 没有强制绑定到特定的实现上) 的 特征称为服务之间的松耦合 7 1 。 从对s o a 的定义中,可以看到以下两点: ( 1 ) 软件体系架构:s o a 不是一种语言,也不是一种技术,更不是一种产品, 而是一种软件体系架构,s o a 尝试给出在特定环境下推荐采用的一种架构模式。 ( 2 ) 服务是s o a 实现的基础。s o a 的基本元素是服务,s o a 指定一组实体 ( 服务提供者、服务请求者、服务注册表、服务条款、服务代理和服务契约) ,这 些实体详细说明了如何提供和消费服务。遵循s o a 的系统必须要有服务,服务是 可互操作的、独立的、模块化的、位置明确的、松耦合的且可以通过网络查找。 s o a 之所以受到追捧,是因为它的灵活性和业务相关性。s o a 把企业应用程 序中所包含的离散业务功能组织为可互操作的、基于标准的服务。服务可以在复 合应用程序和流程中快速结合并重用,从而快速满足业务需求的变化,实现i t 4 企业服务总线( e s b ) 在s o a 中的应用研究 为业务提供支持的终极目标。服务是s o a 的基本元素,如何让业务服务最大限度 地灵活复用是s o a 的核心价值,e s b 恰恰能为分散的服务提供交互、组合和治 理的基础架构,有了e s b ,才能释放出s o a 的最大价值o 】。 2 2w e b 服务技术 2 2 1w e bs e r v i c e s 概述 首先明确w 曲s e r v i c e s 与w e bs e r v i c e 的区别: 在w e b 服务的专业领域上,w e bs e r v i c e s 是整个架构w e b 服务的技术框架, 如x m l 、s o a p 、w s d l 、u d d i 等,即w e bs e r v i c e s 不是一个特定技术,而是 一系列相关技术的组合。w e bs e r v i c e 是指使用w e bs e r v i c e s 而架构出来的w e b 服务实例。一般w e bs e r v i c e s 对应的中文名称为w e b 服务技术,而w e bs e r v i c e 则被译做w e b 服务【l l ,1 2 1 。 w 3 c 中w e bs e r v i c e s 体系结构工作组对w e bs e r v i c e s 定义如下: “w e b s e r v i c e s 是一种被u r i 识别的软件应用,它的接口和绑定能被定义、描述和发现 为x m l 支持资源,w e bs e r v i c e s 支持使用通过因特网协议交换的基于x m l 的消 息与其他软件代理直接交互。n 3 】 其他相关的定义还有: w e bs e r v i c e s 是自包含的、模块化的应用程序,它可以在网络中被描述、发 布、查找以及调用。 w e bs e r v i c e s 是基于网络的、分布式的模块化组件,它执行特定的任务,遵 守具体的技术规范,这些规范使w e bs e r v i c e 能与其它兼容的组件进行互操作【1 4 1 。 所谓w e bs e r v i c e ,是指由企业发布的完成其特别商务需求的在线应用服务, 其它公司或应用软件能够通过i n t e m e t 来访问并使用这项应用服务。 从以上定义可以看出,w e bs e r v i c e 有两层含义:其一是指封装成单个实体并 发布到网络上的功能集合体;其二是指功能集合体被调用后所提供的服务。 简单地讲,w e bs e r v i c e 是一个u r l 资源,客户端可以通过编程方式请求得 到它的服务,而无需知道所请求服务是如何实现的。 5 第2 章企业服务总线核心知识 2 2 2s o a 与w e bs e r v i c e s 的关系 s o a 是一个理念、方法学、一种模型,w e bs e r v i c e s 是一组具体的实现技术。 s o a 不等于w e bs e r v i c e s ,w e bs e r v i c e s 是就目前而言比较适合实现s o a 的一些 技术的集合,w e bs e r v i c e s 标准的成熟和应用的普及为实现s o a 提供了基础。 w e bs e r v i c e s 不是唯一实现s o a 的技术,w e bs e r v i c e s 也被用于实现非s o a 架构。 但用w e bs e r v i c e s 来封装业务服务是不错的选择,因为w e bs e r v i c e s 是基于标准 的,来自不同提供者的w e bs e r v i c e 即使运行在不同平台上,底层实现机理不同 也可顺利交互,这是以i j 任何一种技术如c o r b a ,e j b 或d c o m 不能做到的【1 5 1 。 2 2 3w e bs e r v i c e s 技术体系结构 2 2 3 1w e bs e r v i c e s 协议栈 在整个w e bs e r v i c e s 的技术体系中包含了一系列协议规范,参照w 3 c 提出 的w e bs e r v i c e s 协议栈,将w e bs e r v i c e s 的各种典型操作和技术标准构成一个技 术间相互依赖的协议栈,上层功能必须依靠下层的支持【1 d 1 9 1 ,协议栈如图2 1 。 ! 咖帆_ 5 丽燕习艮一,一一一,一,n ,阴e 俐s 一_ 憨;鹏簟戆囊,魏 :彩“锄缪参。秀 ,f黝tic-ud翻_一奠蘸:磊|ld 1d i r 鳅刈测一j 艮垂曩爹安孽 w s 。l 7 i 一,一鬟:二j i 蚤萋露l 荐| | ? s 。a p ,形”面茹翼舅鬻l :霉 o x m l上霪二臻曩 ,霉 一二一荔数据表乃;层嚣l h 丌巳盯r s m t p 匕,堡篓黧曼一童0 誓 甏雾。珊7 粥常”谚4 聱“学蝴“。雾辫象 i : 图2 1w e bs e r v i c e s 协议栈 f i g 2 1p r o t o c o l so fw e bs e r v i c e s 嬲鬻 笔 。 麓 。j 易囊 爱 溪 i 磊燃k 网络传输层:解决使用何种协议来传输s o a p 消息,以适应i n t e m e t 环境, 6 ,喾,嚏,囊嚣缛缓澎鬟,霪罗,谚缀辙l爹硌雾。#澎;,“ 服务质景 企业服务总线( e s b ) 在s o a 中的应用研究 顺利穿越代理和防火墙。理论上,s o a p 协议可绑定到任何一种底层传输协议上, 如h t t p 、f t p 、s m t p 、m q 等。目前,h t t p 是使用最广泛的底层传输协议。 数据表示:x m l 为w e b 服务上层协议提供了数据、信息描述手段。对于w - e b 服务的上层协议,都使用x m l 来进行编码与表示。 消息编码:s o a p 消息采用x m l 进行编码,可顺利穿越防火墙。使用s o a p 协议在服务请求者和提供者之间传递s o a p 消息来调用w e b 服务。s o a p 定义了 请求和响应消息的格式,s o a p 建立在x m l 之上,定义了一种跨平台信息交换 的简单包装方法。绑定于h t t p 之上的s o a p 协议,可跨语言跨操作系统进行远 程过程调用( r e m o t ep r o c e d u r ec f l l ,i 冲c ) ,实现语言和平台的无关性。 服务描述:服务描述层通过w s d l 来对w e b 服务进行描述。w s d l 描述了 w e b 服务接口定义与服务实现定义,服务请求者通过解析w s d l 文件,就可以获 得调用w r e b 服务的相关细节。 服务发现:服务发现机制可以分为静态发现与动态发现。静态发现称为设计 阶段发现,在设计阶段设计人员使用浏览器或其他应用程序界面,在服务注册处 执行查找操作,并把获得的服务描述信息嵌入到应用程序中;动态发现称为运行 时发现,应用程序在运行期间,向服务注册处进行查询定位到匹配的w s d l ,解 析w s d l 获得w e b 服务的接口定义信息与接口实现信息,调用w e b 服务。静态 发现速度快,耦合性强,健壮性差;动态发现速度慢,但耦合性弱,健壮性更强。 服务工作流:服务工作流用来描述多个w e b 服务调用以及多个w e b 服务之 间的调用先后关系,通过协调这些w e b 服务共同来完成某项业务活动。 服务路由与可靠性:服务路由描述了s o a p 消息从一个节点到另一节点的路 由机制,通过定义正向( f o r w a r d ) 路由与反向路由信息使s o a p 消息处理器正确 路由该s o a p 消息到指定节点。 2 2 3 2w e bs e r v i c e s 体系结构 w e bs e r v i c e s 体系结构 1 2 , 1 8 1 基于三种服务角色( 服务提供者、服务注册中心 和服务请求者) 间的交互;交互操作涉及发布( p u b l i s h ) 、查找( f i n d ) 和绑定( b i n d ) ; 三种服务角色和三种交互操作一起作用于w e b 服务构件( w e b 服务实现及其服务 描述组件) 。整个w e bs e r v i c e s 的技术体系结构可用图2 2 表示。 第2 章企业服务总线核心知识 图22w e bs e r v i c e s 的体系结构 f i g2 2 t h ea r c h i t e c t u r eo f w e bs e r v i c e s 2 233 服务描述机制w s d l w s d l ( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ,w e b 服务描述语言) 是一种基于 x m l 格式的关于w e bs e r v i c e 的描述语言。 w e b 服务提供者将自己的w e bs e r v i c e 的所有相关内容如服务传输方式、方 法接口、接口参数、服务路径等,生成相应的w s d l 完全文档,发布给服务请求 者。服务请求者通过w s d l 文档,创建相应s o a p 请求消息,通过h m 传输给 服务提供者:w e bs e r v i c e 完成服务请求后,将s o a p 应答消息回传给服务请求者, 请求者再根据w s d l 文档将s o a p 应答消息解析成自己能够理解的内容2 0 2 ”。 。瘫。需”徽曹。黝勰。嚣麓 。嚣。,:熟捌黠 图23w s d l 层次结构图”1 f i g 2 3 t h ea r c h i t e c t u r e o f w s d l 企业服务总线( e s b ) 在s o a 中的应用研究 在w s d l 中,对w e b 服务的定义使用的元素可以分为两类,一类是服务接 口定义,定义了服务的调用接口、调用方式、传输协议等,包括t y p e s 、m e s s a g e 、 p o r t t y p e 、b i n d i n g 。另一类是服务实现定义,它定义了服务的具体完成某项功能, 包括s e r v i c e 和p o r t 。这两部分可合在一起部署到w s d l 文件中,也可分开部署。 2 2 3 4 服务通信机, ! j - - s o a p s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c o l ,简单对象访问协议) 是w 曲s e r v i c e s 的标准通信协议,是一种标准化传输消息的x m l 消息格式2 0 , 2 1 】。 s o a p 是一个基于x m l 的,在松散分布式环境中交换结构化信息的轻量级 协议,包括四个部分2 3 。2 5 】: ( 1 ) s o a p 信封( e n v e l o p ) : 定义了一个整体表示框架来表示消息的内容以及如何处理消息。s o a p 信封 包括一个s o a p 头( h e a d e r ) 和一个s o a p 体( b o d y ) 。s o a p 头是可选的,其作 用是在松散环境下,当通信双方之间尚未达成一致之时,扩展s o a p 消息的描述 能力。s o a p 体是必需的,包含需要传输给接收者的具体信息。 ( 2 ) s o a p 编码规则( e n c o d i n gr u l e s ) : 是一个定义传输数据类型的通用数据类型系统,这个简单类型系统包括了程 序语言、数据库和半结构数据中不同类型系统的公共特性。s o a p 规范只定义了 有限的编码规则,需要时,可使用自定义编码规则,按需求扩展该基本定义。 ( 3 ) s o a pr p c 表示( r p cr e p r e s e n t a t i o n ) - 定义远程过程调用( r e m o t ep r o c e d u r ec a l l ,r p c ) 和应答的协定。r p c 的调 用和响应都在s o a pb o d y 中传送。在r p c 中使用s o a p 时,需要绑定一种协议 如h t t p 、s m t p 、f t p 等来实现基于s o a p 的r p c ,一般情况下,使用h t t p 来作为s o a p 协议绑定,s o a p 通过协议绑定来传送目标对象的u r i ,在h t t p 中的请求u r 就是需要调用的目标s o a p 节点的u r i 。 ( 4 ) s o a p 绑定( b i n d i n g ) : 定义了一个使用底层传输协议来完成在节点间交换s o a p 消息的约定。目前 s o a p 协议中定义了与h t t p 的绑定。利用h t t p 来传送s o a p 消息,主要是利 用h t t p 的请求响应消息模型,将s o a p 请求的参数放在h t t p 请求里,将s o a p 9 第2 章企业服务总线核心知识 响应的参数放在h t t p 响应里。当需要将s o a p 消息体包含在h t t p 消息中时, h t t p 应用程序必须指明使用t e x t x m l 作为媒体类型。 2 2 3 5 服务发布和发现机制- u d d i u d d i ( u n i v e r s a ld e s c r i p t i o n 、d i s c o v e r ya n di n t e g r a t i o n ,统一描述、发现和 集成) 是一套分布式的面向w e b 服务提供的信息注册中心的实现标准规范,同时 也包含一组使企业能将自身提供的w e b 服务注册以使别的企业能够发现的访问 协议的实现标准f 2 6 1 。 u d d i 是一个广泛的、开放的行业计划,它使得商业实体能够彼此发现 定义如何在i n t e m e t 上互相作用,并在一个全球注册体系架构中共享信息。 ( 1 ) u d d i 规范口7 】 u d d i 规范是一个由w e b 服务所构成的逻辑上的云状服务,同时定义了一种 a p i 编程接口,该编程接口提供描述w e b 服务的简单框架。规范包括几份相关文 档和一份x m ls c h e m a ,用来定义基于s o a p 注册和发现w e b 服务的协议。 u d d i 规范中所有a p i 都用x m l 来定义,包装在s o a p 信封中,在h t t p 协议之上传输。 ( 2 ) u d d ir e g i s t r y ( u d d i 注册中心) u d d ir e g i s t r y 是所有提供公共u d d i 注册服务的站点的统称,是一个逻辑上 的统一体,在物理上则以分布式系统架构实施,不同站点( o p e r a t o rs i t e ) 之间采用 p 2 p 架构实施,访问其中任一站点等于访问整个u d d ir e g i s t r y 。u d d ir e g i s t r y 服务集群为w e b 服务提供“一次注册,到处发布 功能。 u d d io p e r a t o rs i t e 简称u d d i 操作入口,是u d d ir e g i s t r y 中一个对等结点, 对u d d io p e r a t o rs i t e 的查询所获得的结果覆盖全u d d ir e g i s t r y 中的信息。 ( 3 ) u d d i 规范与u d d ir e g i s t r y f 2 8 】 u d d ir e g i s t r y 由u d d i 规范的一种或多种实现组成,它们可以互操作以共 享注册中心数据,依据客户机需要启用支持设计时或运行时发现服务的编程模型。 u d d i 规范是u d d io p e r a t o rs i t e 是实现蓝本,也是需要访问u d d ir e g i s t r y 的 w e b 服务的参考规范。 u d d i 规范、x m ls c h e m a 及u d d ir e g i s t r y 之间的关系如图2 4 。 1 0 企业服务总线( e s b ) 在s o a 中的应用研究 忘u d d 一1 7 露z ,习 艮, i i x m ls c h e m a j 医_ 。幺盔盔灿9 “ u d d ir e g i s t r y 服务集群 图2 4u d d i 规范、x m ls c h e m a 和u d d i 集群之间的关系 f i g 2 4t h er e l a t i o n s h i pa m o n gu d d is p e c i f i c a t i o n 、x m ls c h e m aa n du d d ir e g i s t r y 2 2 3 6 服务组合机制b p e l b p e l ( b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g e ,业务流程执行语言) 是业界在 以x m l 、w e b 服务为基础的诸多规范之上提出的一种新型的业务流程定义语言。 它以业务流程及其参与者的交互为基础定义了业务流程的描述语法,用于业务流 程建模。其中,业务流程及其参与者的交互用w e b 服务接口标准加以描述。因此 b p e l 流程可直接调用符合w e b 服务规范的服务。b p e l 用来描述多个服务交互 的协作与协调,从而对外提供流程服务,以达到某种商业价值3 0 , 3 1 。 b p e l 标准的早期版本称为b p e l 4 w s ( b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g e f o rw r c bs e r v i c e s ) ,后改名为w s b p e l ( w r e bs e r v i c e sb u s i n e s sp r o c e s se x e c u t i o n l a n g u a g e ) ,简称b p e l 。 b p e l 是专为整合w e b 服务而制定的一项规范标准,用于将一组现有的服务 组合起来定义一个新的w e b 服务,组合服务的接口也被描述为w s d lp o r t t y p e 的集合。从本质上说b p e l 是i b m 的w s f l ( w e bs e r v i c e sf l o wl a n g u a g e ) 和微 软的x l a n g ( x m lb u s i n e s sp r o c e s sl a n g u a g e ) 的结合和演化,同时摒弃了一些 复杂繁琐的部分,形成了一种较为自然的描述商业活动的抽象高级语言。b p e l 是一种基于x m l 的标记语言,同时它也继承了传统编程语言中的一些特性如赋 值操作( ) 、循环操作( ) 等。 b p e l 定义的业务流程决定了组合的w r e b 服务之间的逻辑依赖性,即流程定 义了w e b 服务之间的调用顺序( 控制流) 和传送的数据( 数据流) 。b p e l 能清楚 第2 章企业服务总线核心知识 说明服务间交换消息的协作行为,而又不涉及服务内部的实现细节,这样就不暴 露出企业在内部业务中所做的决策和对数据的管理,在更改服务的具体实现时, 也不会影响到已定义业务的工作流程。 2 3s c s d o 规范 w s d l 在增强应用之间可连接性以及互操作性方面迈出了一大步。然而, w s d l 只关注服务接口,并不提供描述一个服务所依赖的其它服务以及服务所需 要使用的配置策略和服务间的依赖关系。单独通过w s d l 很难实现服务之间的组 合调用。 s c a 比w s d l 走的更远的方面是定义了一个服务组件模型以及一个服务组 装模型。服务模型提供了比w s d l 更多的功能,它允许服务提供者不单定义服务 的接口而且还可以定义当前服务和其他服务的依赖关系以及服务交互策略,还有 服务所可能提供的配置功能。 一个s c a 模型对等于一个s o a 项目,模型允许开发者组装一组服务组件, 解决引用依赖和使用策略,这是一个很大的进步,因为当前s o a 平台需要开发者 自己获取那些私有的服务部署引用,有时甚至要在服务实现中硬编码。 2 3 1s c a s d o 规范 s c a ( s e r v i c ec o m p o n e n ta r c h i t e c t u r e ,服务组件架构) 是i b m 和b e a 等公 司提出来的一套s o a 编程模型或者说编程架构,是s o a 思想的一种实现方式3 。 s c a 是一组规范,描述用于使用s o a 构建应用程序和系统的模型,可简化 使用s o a 进行的应用程序开发和实现工作。s c a 扩展了先前用于实现服务的方 法,并与之形成补充,s c a 构建于w e b 服务系列标准等开放标准之上。 s c a 的核心概念是服务及其相关实现。服务由接口定义,而接口包含一组操 作。服务实现可以引用其他服务,称为引用。服务可以有一个或多个属性,这些 属性是可以在外部配置的数据值。 s c a 提出了一种组合应用( c o m p o s i t ea p p l i c a t i o n s ) 的概念,这些组合可以 是各种符合s o a 规范的服务,或者是已经构建好的其他组合应用。s c a 规范旨 在简化服务的创建和组合,对于运用基于s o a 方式服务的应用构建十分关键。 1 2 企业服务总线( e s b ) 在s o a 中的应用研究 s c a 中的一个关键推动因素是s d o ( s e r v i c ed a t ao b j e c t ,服务数据对象) 。 s d o 用于表示业务数据、参数以及服务调用的返回值,当遍历服务网络时,它还 是一种数据表示方式。s d o 作为一种数据编程架构和a p i ,统一不同数据源类型 的数据编程,使开发人员可从不同的数据源以统一的方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 售后服务工作总结模版
- 乳头凹陷护理指导
- 小米手机及小米电视发布会
- 2025年建筑总工程师年终工作总结模版
- 安徽省桐城实验中学2025届数学八下期末学业水平测试模拟试题含解析
- 2025年明山学校线上教学工作总结模版
- 夏季寻爱之旅活动方案
- 幼儿园消防试题及答案
- 营山县国企面试题及答案
- 银行总行笔试题库及答案
- 检察院相关试题及答案
- 2025-2030年中国女鞋行业市场供需分析与发展战略咨询报告
- 遴选公务员笔试真题及答案
- 2025-2030超导磁体和线圈行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 高瞻课程师幼互动
- 2025年全国中学生数学奥林匹克竞赛(预赛)模拟卷(全国高中数学联赛一试)(含解析)
- 地理信息数据处理技能竞赛试题
- Unit 4 Healthy food B Lets learn(教学设计)-2024-2025学年人教PEP版(2024)英语三年级下册
- 2025届湖南省雅礼中学高三第五次模拟数学试题
- 煤矿安全绩效考核制度1
- 体育教育中的跨学科整合教学研究论文
评论
0/150
提交评论