已阅读5页,还剩62页未读, 继续免费阅读
(计算机软件与理论专业论文)基于web服务的工作流事务研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 把w 曲服务与工作流相结合,允许工作流应用中的任意活动用 w 曲服务的形式以及工作流子过程用w 曲服务组合的形式实现,甚至 工作流本身也以w 曲服务的形式封装给外界使用,是集成企业应用的 一种很好的解决方案。另一方面,事务处理技术是保证信息可靠性和 一致性的关键技术。目前广泛使用的平面事务具有a c l d ( a t o m i c i t y , c o n s i s t e n c y ,i s o l a t i o na n dd u r a b i l i t y ) 特性的原子操作序列,但是由于 w 曲服务环境的资源管理方式完全不同于传统方式,所以对事务提出 了更高的要求。 本文在分析了w 曲服务松散耦合的环境下对工作流事务的需求 以及从w 曲服务组合和参与服务之间的层次关系的角度的基础上提 出了一种用以提高w 曲服务组合事务的处理性能的模型。模型在借鉴 资源预约思想的基础上引入了语义等价封装的概念,在w 曲服务组合 事务与实现工作流活动的参与服务之间增加一个中间服务层,减少了 参与服务补偿的发生,并提高了组合服务事务的提交成功率。中间服 务层屏蔽了实际调用的w 曲服务过程,是一个封装了预约机制以及自 动重复调用语义等价的w 曲服务的服务层。描述了模型的层次结构、 组合服务事务的处理过程、中间服务状态的转换、参与服务的补偿机 制,说明了事务协调框架的组成部件及其完成模型事务语义的协调过 程,最后给出了模型的主要实现。引入中间服务的事务模型可以较好 地满足w 曲服务环境下对长事务的要求,为w 曲服务事务处理提供了 有力支持。 关键词:工作流事务,w e b 服务组合,事务模型,事务协调 a b s l r a c t w 曲s e r v i c e si sap r e d o m i n a n tw a yt oi n t e g r a t ea p p l i c a t i o n sb o t h i n s i d ea n do u t s i d et h eo r g a n i z a t i o n ,e s p e c i a l l yi tc a nb eu s e da sa a c t i v i t y i nt h ew o r k f l o ws y s t e m a n dw e bs e r v i c e s c o m p o s i t i o ni s u s e da s s u b p r o c e s si nt h ew o r k f l o ws y s t e m t h ec o m b i n a t i o no fw j bs e r v i c e sa n d w o r k f l o ww i ub et h em a i ns o l u t i o nt os o l v et h ep r o b l e mo fe - b u s i n e s s 。i f i tc a l lp r o v i d eh i g hr e l i a b i l i t ya n d c o n s t i t e n c yt h r o u g h t r a n s a c t i o np r o c e s s t e c h n o l o g y b u tt h ef l a tt r a n s a c t i o nm o d e ll a c k sf m ns u p p o r t f o r l o n g - t i m e - r u n n i n gt r a n s a c t i o ni na p p l i c a t i o nb a s e do nw e bs e r v i c e s b e c a u s eo fi t ss t r i c ta c i da t t r i b u t e s i td e m a n d sr e l a x e dt r a n s a c t i o n a l a t t r i b u t e st om a n a g et h o s er e s o u r c e so f a p p l i c a t i o ns y s t e mb a s e do nw 宅b s e r v i c e s 砀ed e m a n da n a l y s i so fw o r k f l o wt r a n s a c t i o nb a s e d0 1 1 嬲痧s e r v i c e s ( 1 0 0 s ec o u p l i n g d i s t r i b u t e d e n v i r o n m e n t ) i sg i v e na s as t a r to ft h i s t h e s i s a n df r o mt h ea n g e lo ft h et i e rr e l a t i o nb e t w e e nw e bs e r v i c e s c o m p o s i t i o na n ds e p a r a t e dw e bs e r v i c et h a ti sp a r to fw e bs e r v i c e s c o m p o s i t i o n , at r a n s a c t i o nm o d e lb a s e do np r e c o n t r a c ta n ds e m a t i c s e n c a p s u l a t i o ni sp r e s e n t e dt oi m p r o v et h ee f f i c i e n c yo fw e bs e r v i c e s c o m p o s i t i o nt r a n s a c t i o np r o c e s s w i t hac o n c e p tc a l l e d m i d d l es e r v i c e i n t r o d u c e d ,t h em o d e lu s e sa s i m i l a ri d e at or e s e r v i n gk e yr e s o u r c e sb e f o r e g e t t i n g t h ew 曲s e r v i c e s c o m p o s i t i o n t r a n s a c t i o ns t a r t e d i ti s a c c o m p l i s h e db yt h em i d d l es e r v i c et i e ra u t o m a t i c a l l y , w h i c hi sn o tat i e r f o rc o n t r o lp u r p o s eb u tf o rp r o v i d i n ga u t o m a t i ci n v o k i n gs e r v i c e m i d d l e s e r v i c ep r e c o n t r a c t s k e yr e s o u r c e sa n di n v o k e sw b bs e r v i c e st h a ta r e e q u a lt oe a c ho t h e ri ns e m a t i c sa u t o m a t i c a l l y 硼1 ec o m p e n s a t i o no f s e p a r a t e dw e bs e r v i c ec a nb eg r e a t l yr e d u c e db yt h es e r v i c ep r o v i d e db y m i d d l es e r v i c e ,a n dt h er e d u c t i o ni sa c c o m p l i s h e db yt h em i d d l es e r v i c e w i t h o u ta n yi n t e r v e n t i o no f w e bs e r v i c e sc o m p o s i t i o nt r a n s a c t i o n t h et r a n s a c t i o nm o d e lb a s e do np r e c o n t r a c ta n ds e m a t i c se n c a p s u l a t i o n i sd e s c r i b e di nd e t a i lb yt h i st h e s i s a n dt h ew e bs e r v i c e sc o m p o s i t i o n t r a n s a c t i o n p r o c e s s ,t h e s t a t ec o n v e r s i o no f m i d d l e s e r v i c e ,t h e c o m p e n s a t i o no fs e p a r a t e ds e r v i c ea n dc o o r d i n a t i o nf r a m eo ft r a n s a c t i o n m o d e l ,a n dt h ew o r k f l o we n g i n eb a s e do nt r a n s a c t i o nm o d e la r e i l l u m i n a t e di nt h i st h e s i s m o s to ft h er e a l i z a t i o no ft h em o d e li sa l s o p r e s e n t e di nt h i s t h e s i s t h et r a n s a c t i o nm o d e lb a s e dp r e c o n t r a e ta n d s e m a t i c se n c a p s u l a t i o nc a l lm e e tr e q u i r e m e n t so nl o n g - t i m e r u n n i n g t r a n s a c t i o no fa p p l i c a t i o ns y s t e mb a e s do nw e bs e r v i c e s ,a n dp r o v i d e s t r o n gs u p p o r tf o rc o m m e r c i a lw e b s e r v i c e s k e yw o r d s :w o r k f l o wt r a n s a c t i o n ,w e bs e r v i c e sc o m p o s i t i o n , t r a n s a c t i o nm o d e l ,c o o r d i n a t i o no f t r a n s a c t i o n 1 1 1 原创性声明 本人声明,所呈交的学位论文是本人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了论文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不 包含为获得中南大学或其他单位的学位或证书而使用过的材料,与我 共同工作的同志对本研究所作的贡献均已在论文中作了明确的说明。 名:驻隰一曲卫日 关于学位论文使用授权说明 本人了解中南大学有关保留、使用学位论文的规定,即:学校 有权保留学位论文,允许学位论文被查阅和借阅;学校可以公布学位 论文的全部或部分内容,可以采用复印、缩印或其它手段保存学位论 文;学校可根据国家或湖南省有关部门规定送交学位论文。 作者签名:导师签名亘蛐期:2 1 竺2年三月旦日 硕士学位论文第一章绪论 1 1 工作流概述 第一章绪论 工作流( w o r l d l o w ) 技术凭借其优越的理念被业内广泛关注。工作流技术是实 现业务过程建模、业务过程仿真分析、业务过程优化、业务过程管理与集成,从 而最终实现业务过程自动化的核心技术。然而,目前工作流技术还存在很多需要 解决的理论与应用难题,尤其是工作流系统的可靠性亟待提高,对“事务牲的支 持是提高可靠性的重要办法之一。本章首先对工作流管理技术进行简单介绍,介 绍工作流技术研究的主要研究热点,并综述本文的研究课题工作流事务的发 展现状。 1 1 ,工作流技术简介 “工作流”是从英文单词w o r k f l o w 翻译而来,w o r k f l o w 是由单词w o r k 和f l o w 组合得到的词。单词w o r k 表示工作或者任务,单词f l o w 的含义是流动、流程 或者流量等,f l o w 反映了一种变化以及变化的过程【l 】。 工作流参与过程、业务程序的自动化处理,文档、信息或者任务按照定义好 的规则在参与者间传递,来完成整个业务目标。同时,工作流也可以完全由手工 组织,但多数工作流都部署在r r 系统中,对过程自动化提供计算机支持。w f m c ( w o r k f l o wm a n a g e m e n tc o a l i t i o n ,工作流管理联盟) 给出的工作流定义:工作 流就是业务过程的自动化或者半自动化【2 l 。 w n “c 给出的工作流定义比较抽象,较难理解。清华大学范玉顺教授根据多 年的理论研究与实际应用经验,在其所著的文献i l l 中对工作流的概念进行了深入 的总结:工作流应该能够描述业务过程以下几个方面的问题:即,业务过程是什 么( 由哪些活动、任务组成,也就是结构化的定义) ;怎么做( 活动间的执行条件、 规则以及所交互的信息,也就是控制流与信息流的定义) ;由谁来做( 人或者计算 机应用程序,就是组织角色的定义) 。 工作流技术是实现企业业务过程建模、业务过程优化、业务过程管理与集成 的核心技术。工作流管理系统( w f m s - - w o r k f l o wm a n a g e m e n ts y s t e m ) 就是一个 支持用户定义、管理工作流过程执行规则,并且根据执行规则为工作流的运行提 供执行环境,以及相关管理功能的复杂软件系统1 2 1 。工作流技术发展越来越快, 各种行业渐渐的采用工作流技术,各工作流管理系统的生产厂家对其产品的定 硕士学位论文 第一章绪论 位,针对的应用领域与运行环境不尽相同,从而其系统实现所采用的技术与体系 结构会有所不同。尽管实现的方法多种多样,但所有的w f m s 都表现出某种共 同的特性,这为不同产品间的集成、协同协作提供了基础。w f m c 制定的工作流 参考模型定义了工作流管理系统的一个公共模型( 如图1 1 ) ,并且指出基于参考 模型的w n 垤s 如何与基于其他模型的w f m s 相互集成。 图1 - 1w f l v i c 工作流参考模型 该模型由五个部件和五个接口组成,五个接口分别实现五个部件与工作流引 擎的协同工作f 。五个部件的主要功能如下: ( 1 ) 过程定义工具( p r o c e s sd e f i n i t i o nt o o l s ) 。用来定义工作过程,使之成为 系统可执行的工作流。 ( 2 ) 工作流执行服务( w o r k _ f l o we n a c t m e n ts e r v i c e ,也叫工作流引擎) 。是系 统的核心部分,负责管理工作流的创建、运行、任务的分配、工作表( w o r k l i s t ) 的管理等等。 ( 3 ) 工作流客户及应用软件( w o r l d l o wc l i e n t a p p l i c a t i o n s ) 。工作流参与者用 来察看、管理自己的工作表,同工作流运行服务协同工作,从而处理分配的任务 ( 4 ) 被激活的应用软件( i n v o k e d a p p l i c a t i o n s ) 。工作流中的由工作流执行服 务自动激活来处理的应用。 ( 5 ) 监控管理工具( a d m i n i s t r a t i o n & m o n i t o r i n gt o o l s ) 。用来监控、管理工 作流的执行及其状态。 1 1 2 工作流技术的研究热点 工作流技术是实现企业业务过程建模、业务过程优化、业务过程管理与集成 的核心技术。在这一技术背景下,工作流管理系统由最初的创建无纸办公环境转 而成为同化企业复杂信息环境、实现业务过程自动执行的必要工具。这样一个转 2 硕士学位论文 第一章绪论 变,把工作流技术带入了一个崭新的发展阶段,使得人们从更深层次、更广的领 域上对工作流展开了研究。当前工作流技术的主要研究热点包括:基于策略的管 理、适应性研究、工作流建模、事务管理等等,本小节就这些研究热点做一些简 要的介绍。 基于策略的管理方面的研究主要关注如何将基于策略的管理方法学应用到 工作流管理系统中,以达到如下目的:简化系统管理的复杂度,支持根据抽象的 目标定义管理操作;支持动态地解释各种类型的策略表达的丰富需求;支持动作 的动态后绑定( 1 a t eb i n d i n g ) 以达到高适配性;可以用统一的方式处理各个视图 ( 控制流,资源,安全) 的需求以及动态性能,从而简化系统设计:以标准的形 式支持根据系统的整体状态和当前的目标策略,调整后续执行的决策制定 ( d e c i s i o nm a k i n g ) ,提供应用人工智能的一种标准方式【3 】 适应性方面的研究主要强调工作流管理系统的快速重构能力和对变化的适 应能力。工作流管理系统的适应性需求来自响应变化的需求,而在工作流系统执 行过程中,变化的需求是由于各种不确定的因素、信息的不完全、合作冲突以及 系统异常等所带来的。相关的研究指明,制约工作流适应性主要包括 4 1 : ( 1 ) 传统工作流模型的集中定义,使得建立的工作流模型不能够很好的支持 工作流的动态变化; ( 2 ) 工作流模型的控制流路由固定,不能够根据实际情况的变化而动态变换 路由; ( 3 ) 企业经营过程中,任务可能发生改变,而工作流执行的任务在模型定义 时就以经固定; ( 4 ) 工作流的相关数据在工作流模型的建立阶段进行绑定,而工作流的资 源、角色、执行者可能会发生变化。 因此,适应性工作流需要在保持工作流参考模型基本结构的基础上需要添加 一些新的适应特征,以解决上述制约工作流适应性的问题。 工作流建模方面的研究涉及到很多内容,一个重要的方面是工作流管理系统 中建模功能的表达能力,这种能力意味着一个工作流模型可以被看作是一个元业 务数据模型,如过程和组织的结构图,资源分配方案等,然而,现有的很多系统 没有很好的元业务数据模型,业务过程中某些通用的结构还不能得到有效的处 理。另外一方面,现在的w f m s 大多是适合标准过程的,就是说,过程实例的数 量是远远大于过程数量的,被称为“生产工作流”。但是,将来希望系统能为每个 实例定义一个单独的过程,即特别工作流”。在现今的w f m s 中,通过定义带有 通用任务的过程可以部分地解决这一问题,但实际上只是暂时回避了问题。通用 任务的使用使得许多管理工作必须在应用程序中完成。解决这个问题需要进一步 3 硕士学位论文第一章绪论 把过程定义功能集成到工作流引擎中圈。 事务管理方面的研究主要是试图将一些已有的针对数据库管理的高级事务 模型1 6 1 ( a t m , a d v a n c e dt r a n s a c t i o nm o d e l ) 如s a g a s 、嵌套事务模型、柔性事务、 a c t a 等,应用到工作流系统过程实例的执行中,以提高w f m s 的可靠性、正 确性,以及过程和活动执行的完整性。但是到目前为止,事务管理的许多概念, 如放松的a c i d 属性、事务补偿、失败语义等在w f m s 中的定义仍然是不明确 的。研究表明,工作流模型比高级事务模型具有更丰富的语义,w f m s 为高级事 务模型的实现提供了一个理想的环境。如包括卡内基梅隆大学的c a m e l o t 原型系 统、加州大学洛杉矶分校( u c l a ) 的l o c u s 系统,t r a n s a r c 的e n c i n a 事务处理 系统、麻省理t ( m i t ) 的a r g u s 项目等都实现了嵌套事务模型【l l 。 事务型工作流的一个重要方面是事务的补偿,即当过程或活动执行失败时如 何将其影响部分甚至完全消除,这将涉及到对过程或活动的撤销以及另外一些活 动的重新执行。由于过程或活动的撤销和重新执行都具有较高的开销,因此在事 务补偿时应尽量减少这两种过程或活动的数目,提高事务处理的效率。 迄今为止,多数w n 讧s 主要是面向某个独立组织的业务过程。为此,它们 假设资源由该组织唯一雇佣,可以由资源管理者( 系统管理员或应用程序) 任意 分配,并且所有的信息交换都使用相同的格式。如果我们希望应用工作流管理系 统来协调虚拟企业或跨越多个组织中的业务过程,那么就会出现各种不能被当前 w f m s 所解决的问题。因此,工作流管理系统与支持电子商务的事务处理间存在 着密切的联系,而这种联系需要许多额外的功能来支持组织间的过程【5 1 。这种跨 组织工作流管理的复杂性在于,“任务”的含义发生了变化:它不再对于每个组织 都是原予的。例如,对于旅行社是原子的任务,对于航空公司来说就已经是一个 过程定义,而且航空公司只对公共协商后的业务过程负责,其他与公共过程无关 的私有业务并不受到跨组织事务的任何影响。这样,除了消息标准,参与者之间 的默契配合也非常必要,毕竟,跨组织的事务为分散的控制提供了可能,从而给 参与者更多的灵活性。 下一小节将简要介绍工作流事务的发展及其不足之处。 1 1 3 工作流事务综述 事务的概念非常广泛,业务过程当中的事务可以看成是一个双方或者多方之 间的活动,这个活动必须被整个完成,以期得到一致的结果。事务经常涉及到在 共享资源上进行一些操作并且导致全局状态变化进而影响到部分甚至全部的资 源。当事务开始执行,但却无法得到一致的结果时,所有相关方需撤销状态至事 务执行前的状态。换句话说,所有的操作需要被撤销,就像从未发生过一样。 硕士学位论文第一章绪论 工作流管理系统涵盖了信息系统中完整性和跨组织性的需求 7 1 。从事务的观 点看,完整性主要包括与事务模型相关的正确性、并发性、失败处理和恢复等; 跨组织性是从业务过程建模考虑的,主要与组织结构、参与者角色、参与者之闻 的合作以及信息系统有关。因此,人们对传统的事务管理模型进行了改造和发展, 来满足以过程管理为核心的事务工作流系统中多任务的协作运行,使工作流事务 管理机制具有合作性、运行时间长和动态性等特点这种扩展后形成的事务模型 往往称为高级事务模型( a d v a n c e dt r a n s a c t i o nm o d e l ,a t m ) 。主要有嵌套事务模 型【、传奇事6 ( s a g a s ) 模型羽、柔性事务模型 9 1 等 高级事务模型可以用来实现工作流事务管理是因为以下两方面原斟1 0 1 :一是 工作流可以看作是由一组事务组成的有序集合,这些事务对应工作流中的活动或 活动的组合;同时,工作流事务序列的一个运行结构对应工作流结构,这个结构 可通过扩展传统的事务模型来定义,并且工作流遵守正确性准则,这个准则可以 通过高级事务模型规格化。另一方面,高级事务模型可以看作是由组成工作流的 事务的集合,以及事务间的依赖关系的集合构成。事务的依赖关系可以通过正确 性准则或事务运行结构规格化实现,它是扩展事务运行结构及事务状态的条件。 正确性依赖关系说明了并发运行的扩展事务,保证了结果的一致性和正确性, 由于高级事务模型在解决长时间事务、合作事务,开放事务等方面仍有很多 局限性,近几年来,随着w e b 技术的成熟和电子商务应用的广泛应用,人们提 出了大量的新的面向工作流管理的事务模型,这些模型就是采用不同的方法对事 务的a c i d 进行扩展,如活动事务模_ 型( a c t a ) 1 1 1 】、合同事务模型( c o n t r a c t s ) 1 2 1 和事务工作流等。 1 2 研究目的与意义 事务的概念最早是在商务运作的应用程序中用于保护集中式数据库中的数 据,后来,事务己经成为一个重要的编程范例,是构建可靠的分布式应用程序的 关键。今天,事务的概念逐渐扩展到基于w e b 服务的工作流这样的分布式计算 的领域里。 在w e b 服务环境下,一个工作流过程或子过程规定了一系列w e b 服务调用 的可能顺序,这些服务间共享数据的传递、参与到过程中的交易伙伴、w e b 服务 组合的异常处理机制以及能够影响参与该过程的w e b 服务或组合的其它因素。 但是,w 曲服务组合在将功能单一的小粒度w e b 服务组合成具有一定业务功能 的粒度更大的w e b 服务时,组合本身并不具有可靠性和一致性的保证,而且由 于w e b 服务本身的特点,组合服务所需要的事务属性与传统的a c i d 属性并不 完全一致。w e b 服务环境要求这些w e b 服务本身具有相应的事务语义,能够以 5 硕士学位论文第一章绪论 独立的逻辑工作单元的身份参与到工作流组合服务( 工作流组合服务的定义将在 3 2 节给出) 中,需要将这些w e b 服务协调为有结构的事务执行步骤。因此,需 要一个基于w 曲服务的工作流事务模型,提供分布的组合服务的协调,使松散 耦合的w e b 服务组织成一个独立的业务过程,以保证组合服务事务的一致性状 态交迁和参与到组合服务的参与服务的一致性和原子性,并提高组合服务事务的 处理性能。 本文在己有研究工作的前提下开展了深入的研究,针对事务处理中的两个问 题提出一个基于w e b 服务工作流事务管理的模型,提高了w e b 服务事务的处理 性能,并实现该模型的主要功能以对其进行验证。 1 3 研究内容及论文组织 本文在对目前己有的工作流事务方面研究成果的基础上,分析了基于w e b 服务工作流及其事务属性,同时理清w e b 服务的关键技术的组成及其关系,从 w e b 服务组合和参与服务之间的层次关系的角度,针对其中需要解决的两个问题 在借鉴资源预约思想的基础上引入语义等价封装的概念而提出了一个三层结构 的、用以提高工作流中w e b 服务组合事务处理性能的模型,并阐述了模型的组 成和处理机制。本文主要完成的工作有以下几方面: ( 1 ) 介绍了传统工作流事务的相关知识,详细分析了面向工作流系统的事务 模型的事务处理情况: ( 2 ) 分析和比较了在异构,分布,自治的环境下,当前已有的在松散耦合环 境下实现放松事务属性的协议和规范,在借鉴了资源预约思想的基础上引入语义 等价封装的概念,提出了一个用以提高w e b 服务组合事务的处理性能的模型一 基于预约和语义等价封装的事务模型。模型利用i n t e r n e t i n t r a n e t 上存在的语义 等价的w e b 服务提高松耦合事务的成功提交的概率,并减少补偿的发生,从而 达到在保持组合服务事务放松的事务属性的前提上提高组合服务事务的性能的 目的。 ( 3 ) 详细地说明了基于预约和语义等价封装的事务模型的相关概念和处理 机制,包括模型的层次结构、关键资源的预约机制、组合服务事务的处理流程、 中间服务的状态变迁、参与服务的补偿机制、事务模型的协调框架和协调过程等。 ( 4 ) 从应用的角度出发,描述了事务模型的主要实现,最后对它们在现实情 况中的应用前景和框架的不足提出分析和期望。 本文共分为六章: 第一章:绪论。介绍了工作流技术的发展概况和研究热点,本课题的背景和 研究意义,说明了作者在课题中所做的实际工作和进行的理论研究,最后列出了 6 硕士学位论文第一章绪论 论文的组织结构。 第二章:基于w e b 服务的工作流及事务分析。分析和比较了在异构、分布、 自治的松散耦合环境下,当前的已有的工作流事务模型和协议及其在实现的方面 的优点和不足,并分析了基于w e b 服务工作流事务与传统事务在事务属性上的 不同要求。 第三章:w e b 服务工作流事务模型。在借鉴资源预约思想的基础上引入语义 等价封装的概念,提出了基于预约和语义等价封装的事务模型,达到提高组合服 务事务的处理性能的目的。详细说明了模型的层次结构、关键资源的预约和组合 服务事务的处理流程等。 第四章:事务协调框架及其协调过程。描述了第三章提出的事务模型中的协 调框架及其主要部件,主要部件的作用和它们之间的协调过程,通过协调框架和 协调过程实现预约和语义等价封装的特性。 第五章;事务模型的主要实现。介绍模型实现环境和w e b 服务功能的实现, 对模型的相关信息进行了s c h e m a 定义描述,并说明了利用s o a p 进行事务的协 调过程、b p e l 流程链路关系的映射和工作流引擎的任务调度过程等。 第六章:总结与展望。总结本文的工作和相关概念在定义上的局限性、w e b 服务的语义匹配、补偿事务和安全等方面说明不足之处,指出论文的下一阶段的 工作。 7 硕士学位论文 第二章基于w e b 服务的工作流及事务分析 第二章基于w e b 服务的工作流及事务分析 w e b 服务自诞生以来就以其自描述、跨平台、松耦合以及开放性等特点受到 推崇并得到了迅速推广,使用w e b 服务来集成分布式应用成为当前开发跨组织 应用系统的主流方案。w e b 服务在i n t e r a c t 环境中不仅可被直接调用,而且可被 组合链接成跨组织的业务流程,这种流程的集成方式正在成为一种趋势。为了保 证多个w e b 服务交互获得正确的、一致的执行结果,有必要为w e b 服务提供事 务支持。本章将在简要介绍w e b 服务的技术体系和基于w e b 服务的工作流的概 念后,分析w e b 服务事务领域的现有规范和协议,总结了w e b 服务事务处理需 要解决的难点,在此基础上引入了基于w e b 服务工作流事务模型以及与之相关 的概念 2 。1w e b 服务技术简介 w e bs e r v i c e s 作为一个崭新的分布式计算模型,它封装了单个实体并发布到 网络上以供其它程序调用。w e bs e r v i c e s 从广义上可以将其理解为一种通过互联 网进行数据及功能共享的技术;在狭义上可以将其理解为一种通过标准接口进行 调用的构件,是现有分布式对象技术的延伸。 2 1 1 概述 w e b 服务的一个重要的特点是实现平台的细节和业务调用程序无关,这使得 w e b 服务可以形成松散耦合的组件系统。从技术层面上来说,w e bs e r v i c e s 是基 于x m l 的、采用s o a p 协议的一种软件互操作的基础设施;从应用层面来说, w 曲s e r v i c e s 是用于集成应用的,将原有的面向对象、面向组件的软件系统改造 为基于消息面向服务的松散耦合系统或者一种构建新的松散祸合系统的协作设 施0 4 1 在此,必须要把两个层面的对w e bs e r v i c e s 的理解区分开,一个是w e b s e r v i c e s 作为基础设施出现时,它本身拥有具体技术标准和协议;另外一个是具 体的软件系统,因为采用符合w e bs e r v i c e s 标准的方式来构造或包装而成为一个 可向外部提供w e b 服务的软件应用( 即w 3 c 定义所说的w e b 服务) w e bs e r v i c e s 提供了基于在松散耦合环境下完成应用之间互操作与集成的技 术框架。以x m l s o a p i d d i 为主干的技术赋予了w e bs e r v i c e s 与传统分布式 技术所不同的架构模型。w e bs e r v i c e s 的体系结构基于三种角色( 服务提供者、 s 硕士学位论文第二章基于w e b 服务的工作流及事务分析 服务请求者和服务注册中心) 之间的交互,它是一种s o a ( 面向服务的体系结 构,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 ) 架构,如图2 1 所示。该架构中涉及三种角色: 服务提供者、服务请求者和服务注册中心i ”】【1 6 1 。 服务提供者( 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 ) :服务的使用者,寻找并调用服务,或者启 动与服务交互的应用程序。服务请求者角色可以由浏览器来担当,由人或者没有 用户界面的应用程序( 如另一个w e b 服务) 来控制。 服务注册中心( s e r v i c er e g i s t r y ) :这是可搜索的服务描述注册中心,服务 提供者在此发布它们的服务描述。在静态绑定开发或者动态绑定执行期间,服务 请求者查找服务并获得服务的绑定信息。对于静态绑定的服务请求者,服务注册 中心是体系结构中的可选角色,因为服务提供者可以把描述直接发送给服务请求 者。同样,服务请求者可以从服务注册中心以外的其他来源得到服务描述。 同样,在该模型中提供了三种基本操作用于完成应用之间的交互: 图2 - 1w e bs e r v i c e s 架构 ( 1 ) 发布。创建服务后,就可以在业务注册表中发布。该注册表包含有关服 务和创建程序的完整信息,容器将该服务发布在其所属业务类别下的注册表中。 ( 2 ) 查找。服务请求程序通过服务提供商提供的接口,在服务注册中心查询 所要求的服务类型。对于服务请求者,可能会在两个不同生命周期阶段牵涉到查 找操作:在设计时,为了程序开发而检索服务的接口描述;而在运行时,为了调 用而检索服务的绑定和位置描述。 ( 3 ) 调用。通过服务引用调用服务,结合x m l 和h r r p ,使用s o a p 实现 数据传输。到达这一步骤时,订阅者已经将所选服务绑定到应用程序中。然后, 订阅者就可以调用服务并获取所需的结果。 9 硕士学位论文第二章基于w e b 服务的工作流及事务分析 2 1 2 相关标准和协议 w e b 服务体系结构关键的部分就是用于数据表示、数据传输和应用程序通信 的技术。由于这些技术都已经标准化并已被业界所接受,所以只要遵守标准,开 发人员可以采用任何语言在任何平台上开发和应用自己的逻辑。 s t a t i c - - ) u d d l d i r e c t - - ) u d d i w s d l s o a p 图2 - 2w 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 b 服务,从而能够充分利用现有资源,实现分布式开发和重用性。 因此,w e bs e r v i c e s 中的协议栈将充分体现开放和标准的原则。图2 - 2 列出了 w e bs e r v i c e s 的协议栈结构。 在图2 2 中,各个层次由不同的标准技术来实现,高层协议建立在由低层协 议提供的功能基础之上。其中传输层包括了已经定义好的并且广泛使用的应用层 的标准:h t t p 、f t p 、s m t p 等。传输层的四层是目前开发的w e b 服务的相关 标准协议,包括服务调用协议s o a p 、服务描述协议w s d l 和服务发现、集成 协议u d d i ,以及服务工作流描述语言w s f l 。垂直的协议代表了协议各层都必 须满足的高层要求,包括路由、可靠性以及事务等方面的协议。下面简述最高四 层所使用的标准和协议 1 x m l x m l ( 可扩展标记语言) 虽然不是w 曲s e r v i c e s 协议栈中一个单独的协议 l o 硕士学位论文第二章基于w e b 服务的工作流及事务分析 层,但它却是w e bs e r v i c e s 的核心技术x m l 为w e bs e r v i c e s 提供了统一的数 据格式,包括消息、服务描述以及工作流描述等不同层次协议,都采用x m l 作 为定义语言。 2 s o a p s o a p ( 简单对象访问协议) 是一种简单的、轻量级的基于x m l 的机制, 用于在网络应用程序之间进行结构化数据交换【 l 。s o a p 包括三部分:一个定义 描述消息内容的框架的信封、一组表示应用程序定义的数据类型实例的编码规则 以及表示远程过程调用和相应的约定。s o a p 可以和各种网络协议( 如h t r p 、 s m t p 、m 和i i o p 或m q 上的r m i ) 相结合使用,或者用这些协议重新封装 后使用。s o a p 用x m l 进行消息编码。因此在调用过程中的入和机器都极易处 理消息。另外,调试s o a p 消息的方便性使各种s o a p 执行能快速聚合在一起, 这点保证了更大范围的协同工作。借助x m l 和s o a p ,集成和交互的问题将从 层次上被简化。x m l 提供了跨平台的数据编码和组织方法,而s o a p 建立在x m l 之上,定义了一种跨系统平台的信息交换的简单包装方法。绑定于h t r p 之上的 s o a p 协议,可以跨语言、跨操作系统进行远程过程调用,实现了编程语言和系 统平台的无关性。 3 w s d l w s d l ( w e b 服务描述语言) 是描述w e b 服务的x m l 语言【1 5 1 。使用w s d l , w e b 服务被描述为一组服务访问点( 端口p o r t ) ,端口会处理包含面向文档或面 向过程的消息,其中操作和消息都是被抽象描述的,然后它们被绑定到一个具体 的网络协议和消息格式上。本质上,w s d l 至少需要说明w e b 服务三个方面的 信息:( 1 ) 服务做什么,即服务所提供的操作;( 2 ) 如何访问服务数据格式 以及访问服务操作的必要协议;( 3 ) 服务位于何处由特定协议决定的网络地 址用w s d l 来表达的服务描述文档其组成如图2 - 3 所示。一个完整的w s d l 服务描述是由一个服务接口和一个服务实现文档组成的。服务实现描述服务的实 例,每个实例都是使用一个w s d l 服务元素定义的w s d l 信息模型规定了一 个w s d l 文档应该满足什么样的模式,是对实例文档的一个约束。 4 u d d i u d d i ( 统一描述、发现和集成) 是统一描述、发现和集成协议的简称。顾 名思义,u d d i 是用来描述、发现并集成w e b 服务的一系列技术规范,它是正 在形成中的w e b 服务协议栈的一个关键部分【1 5 l 。通过u d d i ,企业能够发布并 搜索w e b 服务,从而大大降低发布信息和寻找业务伙伴的成本,提高企业的运 营效率。 硕士学位论文第二章基于w e b 服务的工作流及事务分析 抽象接口定义 旧( t y p e s ,i= 霪主 ,+ 叶修改 消息( m e s s a g e s ) 包含 t 端口类型( p o r t i 、y p e s ) 一 | 操作( o p e r a t i o n s ) t l 绑定( b i n d i n g s ) li 操作( o p e r a t i o n s ) l l抽象具体绑定l i 服务( s e r v i c e s ) i1 端口( p o r t s ) i 田2 - 3w e b 服务描述文档组成圈 u d d i 的核心组件是u d d i 商业注册,它使用x m l 文档来描述企业及其提供的w e b 服务。从概念上讲,o d d i 商业注册信息内容分为白页信息、黄页信息和绿页信息。自页中 存放企业的地址、联系方式、企业身份识别等企业的基本信息;黄页中存放基于标准分类的 行业类别信息;绿页中存放w e b 服务的技术信息多个合作站点之间可以无缝地共享注册 信息 从w e bs e r v i c e s 体系结构中的角色来看,首先,u i ) d i 可以是服务提供者, 因为它提供e - b u s i n e s s 服务,它还可以通过服务注册发布其提供的可用的服务。 其次,它也可以作为服务请求者,因为它要通过服务注册发现需要的服务,然后 绑定到服务提供者提供的服务上并实施调用它进行的主要操作就是服务注册, 服务注册为服务的发布和定位提供支持,这类似于电话黄页。 2 2 基于w e b 服务的工作流及其事务模型 基于w e b 服务的工作流技术,是一种先进的工作流模型。它采用w 如服务 来实现i n t e m e t 环境下的工作流应用的松散耦合和集成,使企业可以方便地集成 现有的应用和开发新的应用。w e b 服务依照u d d i 标准,通过名字和目录来定位 服务,使用w s d l 来描述,消息对象传递则采用s o l d 。w e b 服务可以广泛应 用在网络化工作流系统协作中。基于w e b 服务的工作流则是在组件和消息中问 件的基础上,结合) 口l 标准所形成的一种松散的分布式工作流体系在集成范 硕士学位论文 第二章基于w e b 服务的工作流及事务分析 围上,企业应用集成也从单纯的程序问集成,逐渐过渡为企业范围和跨企业的不 同应用之间的集成n 7 1 。w e b 服务为实现供应链企业间的工作流体系提供了有力 的支持。 2 2 1 基于w e b 服务的工作流 把w e b 服务与工作流相结合,允许工作流中的应用中的任意任务用w e b 服 务的形式实现,工作流本身也以w 曲服务的形式封装给外界使用,是企业集成 应用的一种很好的解决方案。面向w e b 服务的工作流建模语言是实现面向w e b 服务工作流系统
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工安全培训试题选择题及答案解析
- 尖端技术交付承诺函3篇
- 新疆会计从业资格考试2及答案解析
- 2025年大数据分析在政府治理中的应用研究报告及未来发展趋势预测
- 2025年区块链行业区块链应用与数字货币发展研究报告及未来发展趋势预测
- 秋天的田野美丽的丰收季节写景(11篇)
- 高考国际象棋题库及答案
- 教育机构运营质量承诺函(8篇)
- 化学卷子中考真题及答案
- 2025年人工智能技术在教育领域的应用研究报告及未来发展趋势预测
- 《狂飙》影视鉴赏主题班会
- 连续性肾替代治疗抗菌药物剂量调整专家共识(2024年版)解读
- 2024学年天津市南开中学高二数学上学期期中检测试卷及答案解析
- 南京信息工程大学《数字图像处理Ⅰ》2022-2023学年期末试卷
- GB/T 30893-2024雨生红球藻粉
- 部编版一年级上册语文第二单元声母练习 (6份)
- 2024-2030年中国生态修复行业市场发展分析及前景趋势与投资战略研究报告
- 网络安全风险评估合同
- 动静脉内瘘PTA护理查房
- DB34-T 4800-2024 退化天然林生态修复技术规程
- GB/Z 43202.1-2024机器人GB/T 36530的应用第1部分:安全相关试验方法
评论
0/150
提交评论