




已阅读5页,还剩55页未读, 继续免费阅读
(管理科学与工程专业论文)基于SOA架构的JBI应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要摘要随着经济的不断发展,企业之间竞争越来越激烈,这就要求企业不断提高自己的核心竞争力,提高业务的灵活性,能够迅速改变自己的业务流程以适应不断变化的市场要求。在这种形势下,不仅要求企业的信息系统能够反映企业的业务流程,而且当业务流程发生变化时,企业信息系统能够迅速做出相应的改变。在s o a 架构出现之前,系统的设计采用紧耦合的方式,即通过大段代码的暂时性连接,定义系统功能,s o a 则以服务的松耦合为前提,能够随需要将各种服务结合在一起,具备构建不同的组合能力,或者将组合服务进行解体,成为功能组件。j b i 规范定义了一种可插拔、组件化的企业服务总线架构和基于w s d l 的抽象服务模型。在开发信息系统时,可以采用组件技术把系统功能分解成独立的组件加以实现。本文通过对面向服务的体系架构的理论研究,利用w e b 服务和w e b 服务组合技术,参照j b i 规范,提出了s o a 架构下基于j b i 规范的信息系统架构的模型( i n f o r m a t i o ns y s t e ma r c h i t e c t u r em o d e lb a s e do nj b i ,i s a m j b i ) ,该模型将信息系统分为业务层,w e b 服务层,服务组合层,数据服务层。在使用i s a m j b i 系统架构模型开发系统时,首先需要分析企业的业务流程,按照一定的服务粒度将业务流程中的业务活动包装为w e b 服务,最后通过服务组合技术业务流程中的业务服务组合到一起。在按照i s a m j b i 模型进行客运站信息系统的开发过程中,需要分析客运站业务的流程。例如,在派车业务中,首先需要为客运线路分配车辆和驾驶员,其次对车辆和驾驶员资质进行审核,最后完成派车业务。通过对派车业务流程的分析,可以将车辆查询,驾驶员查询,车辆资质审核,驾驶员资质审核分别设计为单独的w e b 服务,最后通过b p e l 语言将各个单独的w e b 服务组合起来,完成派车流程。i s a m j b i 模型大大提高了服务的可重用性,具有高度逻辑性,灵活性,分布式,跨平台性和松耦合等优点。关键词:s o a ;服务粒度;服务组合;j b i英文摘要a b s t r a ctw i t ht h ed e v e l o p m e n to fe c o n e m y ,t h ec o m p e t i t i o n sa m o n ge n t e r p r i s e sa r em o r ea n dm o r ei n t e n s e i tr e q u i r e st h ec o m p a n i e sc o n t i n u o u s l yi m p r o v et h ec o r ec o m p e t i t i v e n e s s ,i n c r e a s eb u s i n e s sf l e x i b i l i t y t h ec o m p a n i e sa l s os h o u l db ea b l et oq u i c k l yc h a n g et h e i rb u s i n e s sp r o c e s s e st oa d a p tt oc h a n g i n gm a r k e t i nt h i ss i t u a t i o n ,t h ee n t e r p r i s ei n f o r m a t i o ns y s t e ms h o u l dn o to n l yr e f l e c tt h ec o m p a n y sb u s i n e s sp r o c e s s e s ,b u ta l s ob ea b l et om a k ea p p r o p r i a t ec h a n g e sw h e nt h eb u s i n e s sp r o c e s sc h a n g e s b e f o r et h ea d v e n to fs o a ,t h es y s t e md e s i g nu s e sat i g h t l yc o u p l e dm a n n e r , w h i c hd e f i n e ss y s t e mf u n c t i o n sb yl a r g es e c t i o n so fc o d e w h i l es o ai sb a s e do nl o o s e l yc o u p l e ds e r v i c e s i ta l l o w su st oc o m b i n ed i f f e r e n ts e r v i c e so rd e c o m p o s et h ec o m p o s i t es e r v i c e si n t of u n c t i o n a lc o m p o n e n t sa sw en e e d t h e r e f o r e ,t h ef e a t u r eo ss o ar e q u i r e su st oc o n s i d e rt h er e u s a b l eo fw e bs e r v i c e s w es h o u l ed e s i g nt h ea p p r o p r e a t eg r a n u l a r i t yw h e nw ed e v e l o pt h ew e bs e r v i c e s j b is p e c i f i c a t i o nd e f i n e sap l u g g a b l e ,c o m p o n e n t b a s e de n t e r p r i s es e r v i c eb u sa r c h i t e c t u r ea n dt h ea b s t r a c tw s d l b a s e ds e r v i c em o d e l w h e nd e v e l o p i n gt h ee n t e r p r i s ei n f o r m a t i o ns y s t e m s ,w ec o u l du s ec o m p o n e n tt e c h n o l o g yt od e c o m p o s et h es y s t e mi n t os e p a r a t ec o m p o n e n t s o nt h es t u d yo fs o a ,w e bs e r v i c e sa n dw e bs e r v i c e sc o m p o s o t i o n ,t h i sp a p e rp r o p o s e saa p p l i c a t i o ns y s t e ma r c h i t e c t u r em o d e lb a s e do nj b is p e c f i c a t i o n ( i s a m - j b i ) t h ei s a m j b im o d e ld i v i d e st h es y s t e mi n t os u c hl a y e r sa sb u s i n e s sl a y e r , s e r v i c el a y e r ,s e r v i c ec o m p o s i t el a y e r , d a t as e r v i c el a y e r w h e nd e v e l e p i n gs y s t e m sw i t ht h i sm o d e l ,w es h o u l ea n a l i z et h eb u s i n e s sp r o c e s s e s ,e n c a p s u l a t et h eb u s i n e s sa c t i v i t yi n t os e r v i c e s ,c o m p o s i t et h es e r v i c e st o g e t h e ra tl a s t t a k et h ev e h i c l ea r r a n g e m e n tf o re x a m p l e ,w h e nd e v e l o p i n gt h es y s t e mf o rt r a f f i cu s i n gt h ea s a m j b im o d e l ,w es h o u l ef i r s t l ya n a l i z et h ep r o c e s s e so ft h ev e h i c l ea r r a n g e m e n tb u s i n e s s i nt h ev e h i c l ea r r a n g e m e n tp r o c e s s ,w es h o u l dd i s p a t c ht h ev e h i c l ef o rt r a n s p o r t i o nl i n e ,d i s p a t c hd r i v e rf o rt h ev e h i c l e a tl a s t ,w es h o u l dq u l i f yt h eq u a l i f i c a t i o n so ft h ev e h i c l ea n dt h ed r i v e r w ed e s i g nf o u rs e p a r a t es e r v i c e s ,a n du s et h eb p e ll a n g u a g et oc o m p o s i t et h e mt o g e t h e r t h i sm o d e lh a sal o to fa d v a n t a g e s ,s u c ha sf l e x i b i l i t y , l o o s e l yc o u p l e d ,c r o s s i n gp l a t f o r m t h i sp r o je c t ss u c c e s s f u li m p l e m e n t a t i o na n dd e p l o y m e n tc o n f i r m st h e英文摘要a s a m j b im o d e l sf e a s i b i l i t ya n du s a b i l i t y k e yw o r d s :s o a :s e r v i c eg r a n u l a r i t y ;s e r v i c ec o m p o s i t i o n :j b i大连海事大学学位论文原创性声明和使用授权说明原创性声明本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果,撰写成硕士学位论文二基王墨q 袈塑的= ! 旦! 廑旦硒究:一。除论文中已经注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已经公开发表或未公开发表的成果。本声明的法律责任由本人承担。学位论文作者签名:学位论文版权使用授权书本学位论文作者及指导教师完全了解大连海事大学有关保留、使用研究生学位论文的规定,即:大连海事大学有权保留并向国家有关部门或机构送交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫描等复制手段保存和汇编学位论文。同意将本学位论文收录到中国优秀博硕士学位论文全文数据库( 中国学术期刊( 光盘版) 电子杂志社) 、中国学位论文全文数据库( 中国科学技术信息研究所) 等数据库中,并以电子出版物形式出版发行和提供信息服务。保密的论文在解密后遵守此规定。本学位论文属于:保密口在年解密后适用本授权书。不保密叮( 请在以上方框内打“”)论文作者签名:巧基于s o a 架构的j b i 应用研究第1 章绪论1 1 研究背景及选题意义随着改革开放的不断深入,中国的经济发展速度越来越快,全球的经济一体化进程不断加快,企业之间的竞争越来越激烈,使得企业的业务系统不仅要灵活适应变化多端的市场新需求,而且还要跨越企业级边界,形成跨i n t o - n e t 企业间动态联盟。而如何有效完成企业部门和企业间的业务集成,已经成为新一代企业信息系统集成所需要解决的最关键的问题之一。以跨平台性和灵活性为核心的w e b 服务,以及由w e b 服务为核心发展而来的s o a ( s e r v i c eo r i e n t e da r c h i t e c t u r e ) 和s o l ( s e r v i c eo r i e n t e di n t e g r a t i o n ) ,为分布的、异构的企业级w e b 应用组合或协作提供了有效的技术和方法。s o a 将服务平台看做为多个服务所构成,这些服务分别用来表示在业务流程中可以被组合以及再组合成多个不同的解决方案和场景的元素,服务的设计主要由业务需求所决定。这种对服务进行整合和再组合的能力为业务和i t 提供了更紧密的联系,同时也为处理新问题提供了灵活性【l 】。从业务的角度来看,一个s o a 可以被理解为业务希望展现给它的客户,伙伴或其他内部结构的一组灵活的服务和流程。当业务需求随着时间发生改变之后,这些服务可以被再组合和补充,从而完成新的功能。从技术的角度来看,s o a 将系统定义为离散的服务,这些离散服务可以通过组件来实现。s o a 的概念发展了现有的关于“功能 的软件的概念一一段实现特定功能的代码,包含了“合约”的概念。所谓合约,就是对功能的一种中立于技术而特定于业务的表示方法。w e b 服务是通过将服务提供者( 业务组件或企业组件) 与服务接口描述分离、服务查找操作和服务绑定操作,企业可以根据需求变化调整服务提供者及其服务内部实现的功能。由于单个企业组件可以提供的功能十分有限,因此这使得将一些相互关联的服务按照一定的逻辑顺序进行组合成为必要。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 ,业务流程执行语言) 是专为w e b 服务组合而制定的一项规范标准。b p e l 通过将组现有的w e b 服务按照一定的流第1 章绪论程顺序组合到一起,从而能够定义一个新的w e b 服务,该w e b 服务可以完成一定的复杂的业务功能。目前实现w e b 服务组合主要是通过使用b p e l 来完成,b p e l已经成为业界事实上的标准。采用w e b 服务组合技术实现企业业务服务的继承,从而能够实现企业各种资源的共享与应用集成。采用w e b 服务组合技术主要有两点好处:第一,使企业不同部门间和不同的企业间的复杂业务协作能够得以实现;第二,利用w e b 服务组合技术,能够重用企业的现有系统,根据企业的实际业务流程模型,从而能够组合出新的w e b 服务以适应业务变化的需求,从而能够灵活、快速地响应不断发生变化的业务需求。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 l t 2 1 如下:它是由中间件技术实现并支持的面向服务架构( s e r v i c eo r i e n t e d a r c h i t e c t u r e ,s o a ) 的基础框架,支持异构环境中的服务通过消息进行交互,并且具有适当的服务级别和可管理性。e s b 的出现使得企业先前的投资不会浪费,使企业的应用能够被新系统或其他企业的应用进行复用。1 。2 国内外研究现状e s b 位于s o a 的中心,并通过减少接口的数量、大小和复杂度使得s o a 更为强大。e s b 主要完成以下5 件事【9 】:服务之间的消息路由;请求者和服务之间的传输协议转换;请求者和服务之间的消息格式转换;处理各种来自不同的业务的事件;保证服务质量( 安全、可靠性和交互处理) 。现阶段,对于e s b 的研究主要是关于企业应用整合的研究,目前有关企业应用整合的问题主要是从广度和深度两种角度来研究【4 2 】。基于s o a 架构的j b i 应用研究从企业应用的集成的广度来看,主要有以下几种系统的集成:企业同一部门的内部同构和异构信息系统之间的集成;企业不同部门之间的同构和异构信息系统之间的集成;不同企业之间的信息系统之间的集成;从企业应用的集成的深度上来说,主要有以下几种系统的集成:企业业务数据的集成;企业应用系统的集成;企业内部和不同企业之间的企业业务集成。针对解决不同企业应用整合程度的问题,以及e s b 固有的特点和功能,目前业界有关e s b 的研究要点大体在一下几个方面:( 1 ) e s b 固有标准规范的研究目前e s b 的实现有两种规范,一是由s u n 公司推出的j b i ( j a v ab u s i n e s si n t e g r a t i o n ) 规范,另一种是由i b m 等公司推出的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 ) 3 1 。这两种规范各有优势,j b i 实际是个在j a v a 实现的容器中部署各种组件的规范,它关注的重点在于服务端,s c a 关注点在客户端,s c a 可以用j b i作为它的后台实现。目前这两种规范都在发展当中。( 2 ) e s b 实现架构的研究由于企业大小以及内部组成模式不尽相同,因此根据不同的应用需求,对e s b的实现架构的设计应是不同的。分布式的架构便于解决企业间以及更高层次的应用整合问题,而集中式架构也能很好的解决企业内部的信息整合问题。( 3 ) 企业应用整合通信与安全性等的研究由于e s b 的设计实现中要牵涉到通信、协议转换和安全等众多问题,故有关通信协议机制的研究、服务通信间的安全【4 】等问题也是e s b 的研究要点。目前,国内外e s b 市场上的厂商都普遍认为,e s b 是一种实现企业应用集成( 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 ) 的新技术,可以帮助企业快速简便地实现s o a 。目前e s b 产品中开源产品主要有以下几种:s e r v i c e m i x 5 】:s e r v i c e m i x 是基于s o a 架构和事件驱动架构( e v e n td r i v e na r c h i t e c t u r e ) ,并完全基于j s r 2 0 8j b i 标准实现的e s b 容器。它的主要特第1 章绪论性包含:j b i 容器,脚本支持,规则引擎,b p e l 引擎【6 1 等的实现。近期发展的非常快。m u l ee s b 7 】:m u l e 是一个轻量级的集成平台,它允许你快速和简单的完成系统的集成。m u l ee s b 为你开发企业应用系统提供了一个健壮的,安全的,稳定的平台,它支持j m s ,h t t p ,e m a i l ,j d b c 等传输协议。它目前是应用最广泛的开源企业服务总线。o p e ne s b 8 】:它是s u n 公司开发,目的是建立一个世界级的企业服务总线,由于s u n 公司的重视,其功能正在在不断的完善和改进当中。借助于e s b ,可以轻松的实现服务之间的通信和调度。然而,为了提高服务的可重用性和系统的敏捷开发,需要将原有的服务进行组合,完成新的功能。目前,服务组合研究主要有三个方向:基于业务流程的组合方法,基于协作的组合方法和基于规划的组合方法【6 1 1 。( 1 ) 基于业务流程的组合方法基于业务流程的组合方法通过对企业的业务流程进行分析和模拟,将流程中的每一个活动理解为一个个的服务,完成服务的组合。组合服务的基本元素有活动、控制流、数据流等。活动和组件服务执行的某个具体的操作相对应;控制流描述不同活动之间的相互依赖关系;数据流描述活动之间的数据交换关系。本文主要是对基于业务流程的组合方法进行研究,通过对企业业务流程的分析,划分业务流程中的各个活动,在此基础上设计业务服务的粒度,实现企业信息系统的开发。( 2 ) 基于协作的组合方法基于协作的服务组合方法通过对构件服务之间的消息交换序列进行描述来建模组合服务。这种方法通过对组合服务中各个参与者之间遵循的消息交互规范进行描述,定义它们的协作行为,在组合时每一参与者引用组合描述并声明各自的角色。这种方法主要注重于描述消息交换行为,对于具有多方参与的协作过程是一种较为直观的组合服务的建模方法,然而这种方法具有灵活性较差,不适合描述动态服务组合场景等缺点。( 3 ) 基于规划的组合方法基于规划的方法将人工智能引入到服务组合技术当中。基于规划的方法将w e b基于s o a 架构的j b i 应用研究服务看作是a i 中的动作,通过输入输出参数、前提和结果等对w e b 服务进行描述。基于甜规划的方法主要侧重于组合模型建立过程的自动化,然而对运行系统的关注比较缺乏,缺乏有效的实际运用。1 3 本文研究目标与组织结构本文在研究s o a ,w e b 服务和j b i 规范的基础上,通过对基于j b i 的w e b 服务组合技术的应用进行探讨,提出了一个基于j b i 的企业系统架构模型,并通过设计实现实际项目一客运站信息系统对该模型进行验证。本文的组织结构如下:第1 章,绪论。本章主要研究了本文的研究背景、意义和国内外研究现状等内容。第2 章,s o a 架构及关键技术研究。本章首先研究什么是面向服务的体系结构。并且对s o a 的典型实现w 曲服务中所用到的协议和技术进行了较详细的介绍。第3 章,j a v a 业务集成。本章首先研究了j b i 规范和j b i 的环境架构,并对j b i环境架构中的组件框架和规范化消息路由进行了详细的研究。最后学习了s u n 公司推出的开源企业服务总线却e ne s b ,提出了基于j b i 的企业信息系统架构模型,并对该模型进行了分析。第4 章,基于j b i 系统模型应用研究。本章通过对前面相关技术的讨论和分析,参照第三章提出的i s a m j b i 系统模型,并结合实际的项目背景,明确提出了系统所要解决的问题,并且对系统的需求分析、系统的体系结构和系统设计给出了详细的叙述,最后利用w e b 服务,w e b 服务组合技术和基于j b i 规范的企业服务总线却e 1 1e s b ,给出了系统的开发实现。第5 章,总结与展望。对本文所研究的内容进行了归纳和总结,并提出了需要进一步深入研究的展望。第2 章s o a 架构及关键技术研究第2 章s o a 架构及关键技术研究2 1 面向服务体系架构( s o a )2 1 1s o a 概念面向服务架构( s o a ) 是一种业务驱动的r r 架构方式,支持对业务进行整合,使其成为一种相互联系、可重用的业务任务或服务【9 1 。s o a 本质上就是服务的集合,这些服务相互通信,这些通信可能是简单的数据传输,也可能是协调的某种活动。服务就是定义良好、自包含,独立于其它服务的上下文和状态的函数【l0 1 。s o a 有利于当今业务的创新,能够确保i t 系统快速、便利、经济地适应并支持不断变化的业务需求。s o a 促进了将与业务保持一致的企业服务作为设计、构建和组合企业业务解决方案的基本单元的思想。在s o a 体系架构中,服务是最关键的抽象手段,业务被划分为许多的粗粒度的业务服务和业务流程。业务服务相对独立、自包含,并且具有很高的可重用性,业务流程则通过服务组装而来。一个“服务不仅定义了一个与企业的业务功能或者业务数据相关的接口,而且定义了约束这个接口的契约。接口和契约采用中立、基于标准的方式进行定义,它和实现服务的操作系统、硬件平台和编程语言无关。这样,可以使构建在不同系统中的服务以一种统一的、通用的方式进行交互和相互理解。服务之间除了这种不依赖于特定技术的中立特性,借助于服务注册库( s e r v i c er e g i s t r y ) 和企业服务总线( e n t e r p r i s es e r v i c eb u s ) 的动态查询、定位、路由和中介( m e d i a t i o n ) 的能力,可以实现动态的交互。由于技术和位置具有透明性,这就使得服务的请求者和提供者之间耦合度大大降低。这种松耦合系统有两点优势:一是它适应变化的灵活性;二是当某个服务的内部结构和实现逐渐发生改变之后,不会影响到其他的服务的使用【1 1 1 。s o a 体系架构产生的另一个重要的观点是业务驱动i t ,即i t 和业务比以往联系的更加紧密。通过使用粗粒度的业务服务来对业务进行建模,从而产生更加简洁的业务和系统的视图;以服务为基础来实现的企业信息系统具有更好的灵活性、重用性,使企业的信息系统能够更好地应对外界环境的变化;以服务为基础,通过对业务层次的粗粒度服务( 包括业务流程) 进行显式地定义、描述、实现和管基于s o a 架构的j b i 应用研究理,从而提供了企业的业务模型和企业信息系统实现之间更好的“可追溯性 ,减小了它们之间的差距,使得业务的变化能够更加容易传递到r r 。通过前面对s o a 的介绍,可以发现s o a 是一种架构风格,是一种设计方法,而不是一种具体的实现技术( 如w e bs e r v i c e ) 、一种具体的架构元素( 如企业服务总线) ;s o a 的首要目标是实现信息系统和企业业务的对齐,使企业的信息系统能够支持业务的快速变化,其次才是信息系统架构的灵活性和信息系统资产的重用。2 1 。2s o a 基本特征由s o a 的概念可以看出,面向服务的架构体系( s o a ) q 丁,s o a 将应用看做是一个个的服务,这些服务由企业的业务服务抽象而来,并且服务之间通过统一的接口进行通信,不涉及到服务实现的硬件平台,操作系统和编程语言等细节,因此可以发现s o a 的具有如下特征【1 2 】【1 3 】:( 1 ) 服务的封装性:企业的业务服务被封装成组件,这些组件具有非常高的可复用性,能够被不同的业务流程重复使用。业务组件隐藏了服务的内部的实现细节,因此,不管服务内部做出如何大的修改,不管服务使用何种操作平台、运用何种语言进行开发,只要服务的接口不发生改变,就不会影响到其他用户对服务的使用。( 2 ) 服务的重用性:一个服务是一个独立的实体,它和系统底层实现完全无关,这就大大提高了服务的可重用性,从而大大降低了信息系统的开发成本和提高了企业信息系统的开发效率。( 3 ) 服务是自治的实体:服务是由组件组成的组合模块,是自包含和模块化的,即服务自身是完全独立的、自包含的、模块化的。( 4 ) 服务的松耦合度:服务请求者和服务提供者之间进行交互主要通过对服务接口的调用来实现,对于服务的内部具体实现细节,服务请求者并不关心。服务提供者使用标准定义语言对服务接口进行定义,并发布给服务请求者。服务接口对服务使用者和服务提供者之间的调用契约进行了定义,只要服务接口不发生改变,如果只服务提供者的内部实现进行修改则不会影响服务使用者对于服务的调用。s o a 通过服务契约和服务的绑定实现松散耦合,使用者通过第三方注册机制来获得它所需要的服务的描述信息。使用者查看注册机制提供的服务描述并根据第2 章s o a 架构及关键技术研究服务描述来选择合适的服务,通过服务的传输机制与服务进行绑定并调用其方法。( 5 ) 服务的位置透明性:服务是针对企业的业务需求而进行设计的,因此服务需要能够反应企业业务需求的变化,即敏捷( 姆l i 劬设计。要想完全实现企业业务与服务之间的分离,就必须使得服务的设计和部署对用户来说是完全透明的,即服务请求者不需要知道哪一个服务响应了自己的请求,服务请求者关心的是使用一个或多个服务按照其预期结果完成工作就可以了。2 2w e bs e r vic e s2 2 1w e bs e r vic e s 概念w e bs e r v i c e s 主要是对一些操作的接口进行描述,通过传递标准化的x j v l l 消息,可以通过网络访问这些操作。w e bs e r v i c e s 是w s d l 语言来描述的,w s d l描述了与服务交互所需的全部信息,包括服务之间需要传递的消息的格式、传输协议以及服务的位置。该接口隐藏了服务的内部实现的细节,允许通过不同的编程语言,不同的操作平台来对服务进行调用。这使得基于w e bs e r v i c e s 的应用程序耦合度大大降低,并且具有面向组件和跨技术实现的特剧1 4 】。2 2 2w e bs e r v i c e s 技术的优势同传统的分布式模型相比,w e bs e v r i c e s 技术的主要优势在于【1 5 】:w e b 服务使用开放标准,使不同语言和不同平台上的组件可以相互通信。w e b 服务能促进模块化编程方法,使公司可以复用同一w e b 服务与多个公司通信。w e b 服务的实现比较容易和便宜,因为他们用现有基础结构( 如w e b 网络)交换信息。w e b 服务可以大大减少企业应用程序集成( e a i ) 和企业对企业( b 2 b )通信成本,从而为公司带来实在的投资回报。w e b 服务可以递增实现,而不是一次性完成。这样可以减少采用w e b 服务的成本,减少技术切换造成的公司混乱。2 2 3w e bs e r v i c e s 体系架构w e bs e r v i c e s 体系结构主要基于服务提供者、服务注册中心和服务请求者之间基于s o a 架构的j b i 应用研究的发布服务,查找服务和绑定这三种交互操作。这些角色和操作一起作用于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 s 的一个实现。服务提供者定义w e bs e r v i c e s 的服务描述,并将服务描述直接发送给服务请求者或发布到服务注册中心。服务请求者使用查找操作从本地或服务注册中心搜索服务描述,然后使用服务描述与服务提供者进行绑定,并调用相应的w e bs e r v i c e s 实现,同它交互。图2 1 展示了这些操作、提供这些操作的组件以及它们之间的交互。图2 1w e bs e r v i c e s 体系架构模型f i g2 1w e bs e r v i c e sa r c h i t e c t u r em o d e l( 1 ) 角色w e bs e r v i c e s 体系结构中的角色包括如下【1 6 】:服务提供者( s e r v i c ep r o v i d e r ) :服务提供者负责创建服务描述,通过向服务注册中心注册服务,供服务请求者请求调用。服务请求者( s e r v i c er e q u e s t o r ) :通过发布在服务注册中一i i , 的w e b 服务描述,调用由服务提供者提供的w e b 服务。服务注册中心( s e r v i c er e g i s t r y ) :服务提供者在此发布w e b 服务描述。服务注册中心负责为其做宣传。服务请求者通过服务注册中心查找自己所需要的w e b 服务。( 2 ) 行为第2 章s o a 架构及关键技术研究对于利用w e bs e r v i c e s 的应用程序,必须发生以下三个行为:发布服务描述、查询或查找服务描述以及根据服务描述绑定或调用服务。这些行为可以单次或反复出现。w e bs e r v i c e s 体系架构中包含的这些具体操作如下【1 7 - 1 9 】:发布( p u b l i s h ) 为了服务可被外界的服务请求者访问,需要发布服务描述。发布服务描述的位置可以根据应用程序的实际需求而变化。查找( f i n d ) :在查找操作中,服务请求者直接检索服务描述或在服务注册中心查询所要求的服务类型。绑定( b i n d ) :在绑定操作中,服务请求者使用服务描述中的绑定细节来定位、联系和调用服务,从而在运行时调用或启动与服务的交互。2 2 4 w e bs e r v i c e s 协议栈为了完成在松散耦合情况下的对象访问,以及在基本对象访问之上的事务、工作流、安全机制等。实现一个完整的w e bs e r v i c e 体系需要有一系列的协议规范来支撑。表2 1 展示了当前使用的w e bs e r v i c e s 协议栈:w e bs e r v i c e ss t a c k 。表2 1 目前使用的w e bs e r v i c e ss t a c kt a b2 1c u r r e n tw e bs e r v i c e ss t a c k1iooll a y e rb u s i n e s si s s u e s。w s f ls e r v i c ef l o ws t a t i c - u d d is e r v i c ed i s c o v e r yd i r e c t - u d d is e r v i c ep u b l i c a t i o no王cw s d ls e r v i c ed e s c r i p t i o n巴o=逻oc口口o b 。s o a px m l - b a s e dm e s s a g i n g:。每暑。x m f ls c h e m ad a t am o d e l i n g暑x m ld a t ap r e s e n t a t i o nh 1 r i p f t p ,s m t pt r a n s p o r t表2 1 展示的协议中,s o a p ,w s d l 和u d d i 是w e b 服务交互中所使用的核心协议:( 1 ) x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 1 2 0 】【2 l 】x m l 是由w 3 c 组织于1 9 9 5 年2 月制定的一种通用语言规范,是基于s o a 架构的j b i 应用研究s g m l ( s t a n d a r dg e n e r a l i z e dm a r k u pl a i l g u a g e ) 的一个简化子集。它以一种开放的自我描述方式定义数据结构,在描述数据内容的同时能突出对结构的描述,从而体现出数据之间的关系。x m l 是w e bs e r v i c e s 技术的基石,是w e b 服务平台中表示数据的基本格式。x m l 的主要优点在于它与平台无关,与厂商无关,x m l 解决了数据表示的问题,具有较好的弹性和可扩展性,允许使用附加信息。并且x m l 提供了可访问的进程入口,从而可强化业务规则,并且增强可互操作性,为信息的自动处理提供了可能。此外x m l 还具有良好的跨平台移植和自描述性等特点。( 2 ) 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 0 1 ) t 2 2 之4 】s o a p 消息格式是基于x m l 语言的,因此异构环境下的w e b 服务之间可以通过使用s o a p 消息进行交互。s o a p 通过一个模块化的包装模型和对模块中特定格式编码的数据的重编码机制来表示应用语义。s o a p 的这个特点使得很多系统使用它来进行消息的传输。s o a p 由以下四部分组成:s o a pe n v e l o p e :它定义了一个整体的表示框架,可用于表示在消息中的是什么,谁应当处理它,以及这是可选的还是强制的。s o a pe n c o d i n gr u l e s :它定义了一个数据的编序机制,通过这样一个编序机制来定义应用程序中需要使用的数据类型,并可用于交换由这些应用程序定义的数据类型所衍生的实例。s o a pr p cr e p r e s e n t a t i o n :它表示了一个用于表示远端过程调用和响应的约定。s o a pb i n d i n g 它定义了一个使用底层传输协议来完成在节点间交换s o a p 信封的约定。( 3 ) w s d l ( w e bs e r v i c ed e s c r i p t i o nl a n g u a g e ) 2 5 2 7 】w e bs e r v i c e s 是一种基于i d l ( i n t e r f a c ed e f i n i t i o nl a n g u a g e ) 技术的服务描述语言。w s d l 定义了一套基于x m l 的语法,将w e bs e r v i c e s 描述为能够进行消息交换的服务访问点的集合,从而满足了以某种结构化的方式对w e bs e r v i c e s 的调用通信加以描述的需求。w s d l 说明w e b 服务的以下三个基本属性:服务做些什么:如何访问服务;服务位于何处。第2 章s o a 架构及关键技术研究w s d l 信息模型充分利用了抽象规范与规范具体实现的分离,也就是分离了服务接口定义与服务实现定义。因此可以对抽象定义进行再次使用:消息,指对交换数据的抽象描述;而端口类型,指操作的抽象集合。用于特定端口类型的具体协议和数据格式规范构成了可以再次使用的绑定。将w e b 访问地址与可再次使用的绑定相关联,可以定义一个端口,而端口的集合则定义为服务。因此,在w s d l中,w 曲服务描述中的主要元素如下:t y p e s :定义了w e b 服务使用的所有数据类型集合,可被元素的各消息部件所引用。m e s s a g e - 通信消息的抽象类型化定义。使用t y p e s 所定义的类型来定义整个消息的数据结构。o p e r a t i o n :对服务中所支持的操作的抽象描述,一般单个o p e r a t i o n 描述了一个访问入口的请求响应消息对。p o r t t y p e :w e b 服务的抽象接口定义,它的每个子元素定义了一个抽象的方法签名。b i n d i n g :包含了如何将抽象接口的元素转变为具体表示的细节,具体表示也就是指特定的数据格式和协议的结合。p o r t :表示束定是如何部署在特定网络端点上。s e r v i c e :相关服务访问点的集合,即端口( p o r t ) 的集合。( 4 ) 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 ) t 2 8 】【2 9 】在2 0 0 0 年初,发展w e b 服务的势头越来越大,若要把w e b 服务构想变成现实,那么w e b 服务注册是必不可少的。因此,2 0 0 0 年春开始,i b m ,m i c r o s o f t 和a r i b a等几个代表企业经过数月合作,在2 0 0 0 年9 月正式发布了u d d i 。u d d i 的目的是要简化服务发现,包括在设计阶段的发现和运行时的动态发现。u d d i 注册中心是对所有提供公共u d d i 注册服务站点的统称,要成为u d d i 注册服务站点必须遵循数据复制、数据保密和策略的严格协定,站点之间通过复制机制保持彼此间的内容同步。服务提供者在服务注册中心发布w e b 服务,服务请求者则在注册中心查找期望的服务。u d d i 不仅提供了商务服务注册机制,它也定义了一组数据结构及一组用于注基于s o a 架构的j b i 应用研究册服务的发布a p i ( p u b l i c a t i o n a p i ) 和一组用于查找服务的查询a p i ( i n q u i r y a p i )规范,以便利用程序自动的注册和查找商务服务、束定和服务类型。2 3w e b 服务组合2 3 1w e b 服务组合概念在面向服务的架构体系中,服务的可复用性是s o a 的一个基本特征。从组件复用的角度看,组件的粒度越细,即组件实现的功能越小,该组件被复用的概率越大。因此为了保证软件的可复用性,应该降低组件的粒度,提供细粒度的组件。然而当今社会发展不断加快,企业的业务越来越复杂,单一的细粒度的组件已经不能满足企业的业务需要,因此要实现更为复杂的业务功能,则应将相关的业务组件组合在一起形成业务组件系统,也就是在原有组件系统上实现业务增值的过程【3 0 1 。基于这种想法,服务组合的概念被提了出来。原有基于s o a 的w e b 服务系统中,通过对细粒度服务相关服务进行合理的编排或协调,使得元服务或基本服务( e l e m e n t a r y w e bs e r v i c e 或参与服务编排的服务) 3 1 1 基于一定的上下文,来完成服务组合。经过组合的服务称为组合服务( c o m p o s i t ew e bs e r v i c e ) 。组合服务部署到服务组合引擎上,组合服务具体执行过程就是服务组合( w e bs e r v i c ec o m p o s i t i o n ) 。服务组合以服务增值为目标,以高效性、灵活性以及重用性为原则。通过描述元服务( e l e m e n t a r yw 曲s e r v i c e ) 间的控制流和数据流来描述服务组合业务流程的定义,来完成在w w w 或w e b 服务组织中提供增值服务3 2 1 。2 3 2w
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 塔城事业单位笔试真题2025
- 2025年山西公务员考试试题真题
- Unit 9 Let's smell the flowers.教学设计-2023-2024学年小学英语一级下剑桥少儿英语
- 2025租赁合同担保条款
- 云南省考真题2025
- 青海事业单位笔试真题2025
- 金华事业单位笔试真题2025
- 2025境外雇佣合同范本
- 化肥厂安全例会记录细则
- 2025智能穿戴设备ID设计招标合同
- 2025一建《建设工程项目管理》冲刺361题
- 人教版二年级数学上册第二单元 1~6的表内乘法必刷卷 (含答案)
- 抖音账号实名认证承诺函模板
- (2025年标准)以捐代购协议书
- GJB3165A-2020航空承力件用高温合金热轧和锻制棒材规范
- 颈部引流管的护理
- 2025至2030中国门诊外科中心行业项目调研及市场前景预测评估报告
- 2025年食药监局考试题库
- 2024年下半年黑龙江省嫩江铁路有限责任公司校招笔试题带答案
- 2025廉洁答题题库与答案
- 2025年协作机器人产业发展蓝皮书-高工咨询
评论
0/150
提交评论