(计算机软件与理论专业论文)一种web服务编排的演算.pdf_第1页
(计算机软件与理论专业论文)一种web服务编排的演算.pdf_第2页
(计算机软件与理论专业论文)一种web服务编排的演算.pdf_第3页
(计算机软件与理论专业论文)一种web服务编排的演算.pdf_第4页
(计算机软件与理论专业论文)一种web服务编排的演算.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(计算机软件与理论专业论文)一种web服务编排的演算.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种w e b 服务编排的演算 摘要 w e b 服务已经日渐成为- 个承要的研究领域,学术界和工业界都对其非常关注 为确保多个w e b 服务能成功地协同完成一项复杂的工作,人们正越来越重视服务编排 的概念,即从全局观点描述一个业务流程的多个参与方的行为和协作,从而实现某个 共同业务目标的过程w s c d l 是由w 3 c 制定的用于描述w e b 服务编排的语言,但 不少研究者指出,w s c d l 语言还相当不成熟,仍有很多问题尚未解决 形式化方法已被用于对摹于消息通讯的并发系统进行建模和分析,进而认识并发 系统、提高并发系统的正确性和可靠性将形式化方法应用于w e b 服务领域已经成为 一个重要的研究方向 本文研究了w e b 服务编排的演算,特别设计了一个作为w e b 服务编排的轻量级 演算,给出了它的语义,并定义了基于编排的实现模型,建立了从编排到实现的投影, 从而确保编排规范通过投影后得到正确的实现。这些研究可以帮助我们深入理解作为 w e b 服务和应用基础的“编排”与“协作”的概念,弄清其基本属性和规律性,并进 步认识编排语言的设计与实现等方面的问题 本文的研究成果主要包括以下两个方面: 1 w e b 服务编排的演算模型 定义了演算模型的语法和语义:在语法上,通过使用一组算子构造角色进程 之间的“交互”活动,其中包括不会死锁的消息通信活动几闻。r ;语义上,考虑 到编排是不可执行的抽象规范,因而使用迹语义,强调同步通信,对于并行复合 活动,则采用交错运算基于该轻量级演算模型诱导出了结构同余关系,包括预 期的选择、顺序复合和并行复合的结构律,并证明了编排的无死锁特性 2 w e b 服务编排的投影实现 受o r e 的启发,把o r e 面向服务的特点和7 r 一演算的传名通信机制组合在一 起,定义了0 7 c ,r 演算作为编排的实现模型提出了投影o j e c t i c r n 的概念,建立 了从编排演算到o r c 。演算的投影p r 万,并给出了两个关于编排的可实现性语法 条件及其证明系统在此基础上扩展了w e b 服务编排的演算模型及其投影规则, 并通过实例说明了投影实现的正确性 上述结果具有重要的理论和实际意义通过这方面的深入理论研究,可以帮助我 们进一步理解w e b 服务的本质和问题,为w e b 服务领域的发展奠定坚实的基础同 时,理论研究取得的成果也具有潜在的应用价值,能为新型的w e b 服务开发工具提供 技术和方法 关键词: w e b 服务,编排,形式化方法,演算,实现,投影 ac a l c u l u so fw e bs e r v i c e sc h o r e o g r a p h y a bs t r a c t w e bs e r v i c e sh a v eg r a d u a l l yb e c o m ea l li m p o r t a n tf i e l do fr e s e a r c h ,b o t ht h el n d u s t r i a l a n da c a d e m i cw o r l d sp a yc l o s ea t t e n t i o nt ot h i st o p i c i no r d e rt og u a r a n t e et h a tm u l t i p l e w e bs e r v i c e sa c c o m p l i s hah i g h l yc o m p l i c a t e dt a s ki nc o l l a b o r a t i o n ,p e o p l eh a v ec o m et o p a ym o r ea t t e n t i o n st ot h ec o n c e p to fs e r v i c ec h o r e o g r a p h y , t h a ti s ,t od e s c r i b eb e h a v i o r sa n d c o l l a b o r a t i o n so fm u l t i p a r t i c i p a n t sf r o mag l o b a lv i e w p o i n t ,i na c c o m p l i s h i n gac o l n l t l o n b u s i n e s sg o a l w s c d li sal a n g u a g ep r o p o s e db yw 3 cf o rt h es p e c i f i c a t i o no f w e bs e r v i c e s c h o r e o g r a p h y , w h e r e a sr e s e a r c h e r sp o i n t e do u tt h a tt h el a n g u a g ei s s t i l lr a t h e rr a w , a n da n u m b e ro fp r o b l e m sr e m a i nt ob es o l v e dw e l l t h ef o r m a lm e t h o d si sa ni m p o r t a n te f f e c t i v ei n v e s t i g a t i o nm e t h o df o ru st ou n d e r s t a n d t h ee s s e n c eo fc o n c u r r e n ts y s t e m s i n c ef o r m a lm e t h o d sc a nb eu s e dt om o d e la n da r i a l y z ec o n c u r r e n ts y s t e m sf o ri m p r o v i n g i t sc o r r e c t n e s sa n dr e l i a b i l i t y , i ti sn a t u r a lt oc o n s i d e r a p p l y i n gf o r m a lm e t h o d st ot h em o d e l l i n ga n dd e v e l o p m e n to fw e bs e r v i c ea r e a t h i st h e s i ss t u d i e st h ec a l c u l u so fw e bs e r v i c e sc h o r e o g r a p h y , w i t has p e c i a lf o c u s o nt h ef o l l o w i n ga s p e c t s :al i g h t w e i g h tc a l c u l u si sd e s i g n e da st h ef o r m a lm o d e lf o rw e b s e r v i c e sc h o r e o g r a p h y , a n dt h ec o r r e s p o n d i n gs e m a n t i c si sd e f in e d a f t e rg i v i n gt h ei m - p l e m e n t a t i o nm o d e lo fc h o r e o g r a p h y , w ep r o p o s eas e to fp r o j e c t i o nr u l e sf r o mt h eg l o b a l c h o r e o g r a p h ym o d e lt ot h el o c a li m p l e m e n t a t i o nm o d e l ,w h i c hc a ne s t a b l i s ht h ec o r r e c t n e s s o fi m p l e m e n t a t i o na f t e rp r o j e c t i o n t h e s ei n v e s t i g a t i o n sc a nh e l pu st oi m p r o v eo u ru n d e r - s t a n d i n go ft h ec o n c e p t so fc h o r e o g r a p h ya n dc o l l a b o r a t i o nw h i c ha r ea st h ef o u n d a t i o no f w e bs e r v i c e sa n da p p l i c a t i o n s ,a n dt oh a v eab e t t e ru n d e r s t a n d i n go ft h ep r o b l e m sr e l a t e dt o t h el a n g u a g ed e s i g n ,i m p l e m e n t a t i o ne t c ,a n dt h ee s s e n t i a li s s u e so fc h o r e o g r a p h y t h em a i nc o n t r i b u t i o n so ft h i sd i s s e r t a t i o na r ea sf o l l o w i n g : 1 t h es y n t a xa n dt h es e m a n t i c so ft h ec a l c u l u so fw e bs e r v i c e sc h o r e o g r a p h ya r ed e f in e d as e to fo p e r a t o r si su s e dt oc o n s t r u c ti n t e r a c t i o no fr o l ep r o c e s s e s i n c l u d i n gt h ec o r n - m u n i c a t i o no p e r a t o rr 冈。r w h i c hi sd e a d l o c k f l e e w ec o n s i d e rt h em e a n i n go fa c h o r e o g r a p h ya st h es e to fa l lp o s s i b l et r a c e so fi t se x e c u t i o n t h er u l e sf o rt h es e m a n - t i e sa r ed e f i n e di nt r a c es e t ,s p e c i a ll y , t h ee m p h a s i si so f fs y n c h r o n o u sc o m m u n i c a t i o n , a n dt h es e m a n t i c so ft h ep a r a l l e lc o m p o s i t i o ns t r u c t u r ei sd e n o t e db yi n t e r l e a v i n ga c t i v i t i e so ft w ot r a c e s b a s e do nt h ea b o v ec a l c u l u sm o d e l ,t h es t r u c t u r a lc o n g r u e n c ei s d e f i n e da st h el e a s tc o n g r u e n c er e l a t i o ni n c l u d i n gt h ee x p e c t e ds t r u c t u r a ll a w sf o rs e q u e n t i a lc o m p o s i t i o n ,c h o i c e ,a n dp a r a ll e lc o m p o s i t i o n f u r t h e r m o r e ,w ea l s os h o wt h a t c h o r e o g r a p h yw i l ln e v e rd e a d l o c k 2 i n s p i r e db yi n f l u e n c eo fo r c ,w ec o m b i n et h es e r v i c eo r i e n t e df l a v o ro fo r ew i t ht h e n a m ep a s s i n gc o m m u n i c a t i o nm e c h a n i s mo ft h e7 r c a l c u l u s ,a n di n t r o d u c et h e0 7 ,c c a l c u l u sa st h ei m p l e m e n t a t i o no fc h o r e o g r a p h i e s s i n c et h ec o n c e p to fp r o j e c t i o ni s p r o p o s e db yu s ,t o g e t h e rw i t has e to fp r o j e c t i o nr o l e sf r o mt h eg l o b a lc h o r e o g r a p h y m o d e lt ot h ej o c a ji m p l e m e n t a t i o nm o d e l ,w en a t u r a ll yf i n das e to f s t m c t u r a lc o n d i t i o n s f o rs p e c i f y i n gc h o r e o g r a p h i e s ,a n dc o n s t r u c tr e l a t e da x i o m a t i cs y s t e m o nt h i sb a s i s , w ee x t e n do u rc a l c u l u sw i t hs o m en o v e lo p e r a t o r s ,a n dp r o v i d ec o r r e s p o n d i n gp r o j e c t i o n r u l e s m o r e o v e r , w eg i v es o m ee x a m p l e st oi l l u s t r a t ec h a r a c t e r i s t i c so f t h ec a l c u l u s t h u s e n s u r i n gt h ec o r r e c t n e s so fp r o j e c t i o na n di m p l e m e n t a t i o nf o rs e r v i c ec h o r e o g r a p h i e s t h ea b o v er e s u l t sa r eo fp r o f o u n dt h e o r e t i c a la n dp r a c t i c a ls i g n i f i c a n c e i n d e p t hs t u d i e so ft h ep h e n o m e n aa p p e a r e dh e r ec a nh e l pu st oe x p l o r et h ee s s e n c eo fc h o r e o g r a p h y a n dv a r i o u sr e l a t i v ep r o b l e m s ,a n dt ol a ys o l i df o u n d a t i o nf o rf u r t h e rd e v e l o p m e n to fw e b s e r v i c e s m e a n w h i l e ,t h er e s u l t so ft h i ss t u d ya r eo fp o t e n t i a lv a l u ef o rt h ew e b b a s e da p p l i c a t i o n s ,t h u sp r o v i d i n gt e c h n i q u ea n dm e a n sf o rd e v e l o p m e n t a lt o o l so fn e w t y p ew e b s e r v i c e s k e yw o r d s :w e bs e r v i c e s ,f o r m a lm e t h o d s ,c a l c u l u s ,i m p l e m e n t a t i o n ,p r o j e c t i o n 2 1 2 2 2 3 2 3 2 4 3 1 3 2 3 3 4 1 4 2 4 3 图表目录 o r c h e s t r a t i o n 与c h o r e o g r a p h y 基于编排的开发过程示例 w e b 协议栈 7 r 演算和其它演算模型的比较 7 r 演算的语法 演算模型的语法 演算模型的语义 结构同余 o r c 。演算的语法 投影p h 扩展的演算语法 7 9 l 3 4 9 l 2 4 7 7 7 9 儿b h 侉扒龙 拼卯 符号说明 本说明列出了本文所用到的各种符号,其中页码注明了该符号的第一次出现 符号 名称 c ,c 1 ,u ,口,名 t ,t l 迹 s ,t ,n 迹的集合 仍空集合 7 0 c u ( u ) p c ( u ) p 7 - p ! c ( 仳) p q r r 冈。冗 c c 司 冗+ r 所有名的集合 特定实体的自由名集合 特定实体的约束名集合 特定实体的所有名集合 局部活动的集合 通信活动的集合 各种活动的集合 取头部元素 取尾部元素的集合 初始活动的集合 终止活动的集合 前缀算子( 局部活动) 内部通信活动 非活动进程 输出 局部化 输入前缀 内部通信辅助前缀 复合 月! 上的局部活动 通信活动 发送活动 接受活动 选择 页码 1 4 2 0 2 0 1 5 1 4 1 4 1 4 1 4 2 0 2 0 2 0 2 l 2 l 3 0 3 0 1 5 1 4 1 4 1 4 1 4 1 4 1 4 1 4 1 9 1 9 2 4 2 4 1 9 j , b m 咄0 j 川一一删刖啡州邶 r :r rfr p + q p ;q r + 盈r p 【+ 】q 只q ,r c 陬,a 】 工, 】 i n t e r l e a v e s ( 一) p r 7 r p r 导 丁啪 l :j = 全 = 顺序复合 并行复合 选择 顺序复合 主动选择 外部选择 进程 编排 限制运算 连接运算 上下文 交错 投影 扩充投影 语义 标号转移 任意内部通信转移 相等 语义相等 结构同余 挎侈m m卯h侈甜加强扎”弘扒b拍坫加m 浙江师范大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。论文中除了特别加以标注和致谢的地方外,不包含其他人或其他机 构已经发表或撰写过的研究成果。其他同志对本研究的启发和所做的贡献均已在 论文中作了明确的声明并表示了谢意。本人完全意识到本声明的法律结果由本人 承担。 懒名;彬够吼卟伽日 学位论文使用授权声明 本人完全了解浙江师范大学有关保留、使用学位论文的规定,即:学校有权保留 并向国家有关机关或机构送交论文的复印件和电子文档,允许论文被查阅和借阅,可 以采用影印、缩印或扫描等手段保存、汇编学位论文。同意浙江师范大学可以用不同 方式在不同媒体上发表、传播论文的全部或部分内容。 保密的学位论文在解密后遵守此协议。 作者弛彬啼导师签名钟缓蒙晚妒0 7 年6 月扩日 浙江师范大学学位论文诚信承诺书 我承诺自觉遵守浙江师范大学研究生学术道德规范管理条 例。我的学位论文中凡引用他人已经发表或未发表的成果、数据、 观点等,均已明确注明并详细列出有关文献的名称、作者、年份、 刊物名称和出版文献的出版机构、出版地和版次等内容。论文中 未注明的内容为本人的研究成果。 如有违反,本人接受处罚并承担一切责任。 承诺人( 研究生) : 指导教 影铭 厩钟废、芡 第一章绪论 w e b 服务已经日渐成为一个重要的研究领域为开发基于多个参与方的w e b 服务 组合,近年来工业界和学术界提出了基于编排( c h o r e o g r a p h y ) 的新型服务组合构建思 路基于进程演算的形式化方法是认识并发分布式系统、提高并发分布式系统正确性 和可靠性的行之有效的霞要研究方法,因此,很自然地可以应用于w e b 服务编排的建 模和描述之中在这一章中,我们将介绍本论文所涉及的研究背景,有关w e b 服务编 排的演算的主要研究内容,最后说明本文的结构安排 1 1 研究背景 随着互联网和网络技术的发展,出现了以网络环境为基础的分布式系统结构这 种新一代软件的运行平台建立在广泛连通的i n t e m e t 基础上,使得i n t e m e t 整体成为了 这一类软件的运行环境这种开放环境具有许多霞要的特点:能更好地利用网络上现 有的海量自主资源;具有较松散的结构;可以自然地支持业务伙伴之间的合作,支持 合作伙伴的独立性以及异构性;跨企业跨部门等等例如,政府办公系统可能希望对 外部留有接口,使得需要办理手续的企业能把与政府系统的通信作为其内部流程中的 一环,以提高相关业务的自动化程度但因为政府办公系统和企业使用的系统可能采 用不同的软件架构,导致难以互联互通为了解决这类企业或个人的不同平台之间的 异构性,并增强互操作性,w e b 服务( w e bs e r v i c e ) 技术【i 】应运而生所谓。服务” 指的是可提供某种功能的独立计算单元,允许其它服务调用w e b 服务位于i n t e m e t 上,可以是独立、无状态的业务逻辑,也可能有更复杂的功能和接口,允许其它应用 程序通过i n t e r a c t 连接调用w e b 服务是以s o a p1 2 j ,w s d l 【川、u d d i 【4 j 等协议为 核心。采用基于x m l 的通讯的分布式软件组件的实现方式,屏蔽了具体的底层消息 传输协议和端点的消息处理等导致传统软件组件异构的特征,屏蔽了异构平台的操作 系统、网络类型和编程语言。支持分布式环境中动态、开放的互操作模式,能很好地 支持跨平台的应用 随着w e b 服务概念的提出,互联网从单纯的数据提供者逐渐向服务提供者转型 一项w e b 服务可以由一组分布在i n t e m e t 各处的模块通过相互协作的方式完成,通过 使用w e b 服务可以实现跨平台的应用,并提升应用程序之间的互操作性w e b 服务 已经日渐成为一个重要的研究领域,学术界和工业界都对其非常关注然而,w e b 服 务系统具有难以确定的边界,功能模块可能需要在执行中定位,模块间依赖于不可靠 的网络进行通讯和协作这些情况导致了许多新问题,给w e b 服务的开发提出了许多 2 j ! 堕婀史i j 坚兰硬圭迨塞一 新挑战随着w e b 服务应用的发展,这类系统本身也在变得越来越复杂加之w e b 服 务系统本身的并行性、分布性和高度动态性,仅仅依靠开发者的直观认识,将越来越 难以把握所开发的系统的行为在这种情况下,强有力的理论和模型的支持将会变得 越来越重要 自2 0 世纪6 0 年代初p e t r i 提出p e t r i 网 5 - 7 】以来,研究人员就开始致力于研究如 何对系统进行正确建模,从而获得好的系统设计,形式化方法( f o r m a lm e t h o d ) 【8 】就是 在这个背景下产生的形式化方法是认识并发系统、提高并发系统正确性和可靠性的 行之有效的重要研究手段和方法。形式化方法包括形式化描述( s p e c i f i c a t i o n ) 和建立在 形式化描述基础之上的形式化开发形式化的描述就是用形式化的语言( 具有严格的 语法和语义定义的语言) 作为描述工具,研究各种子系统的性质形式化的软件开发, 就是用形式化的语言来描述软件需求和特征,并且通过推理验证( v e r i f i c a t i o n ) 来保证 最终的软件产品满足这些需求、具备这些特征,这样的验证当然得建立在严格的语法 语义的基础之上 进程演算( 也称进程代数) 是一类重要的形式化方法,著名的进程演算包括c c s 【9 1 、 c s p 1 0 j 和7 r - 演算j 等7 r 演算是在c c s 基础上发展起来的一种移动进程演算以 丌- 演算为代表的进程演算,由于其概念简洁,可用的数学工具丰富和数学方法灵活, 在并发分布式系统的规范、分析、设计、验证和信息安全等方面得到了广泛的应用 基于进程演算的形式化方法允许对基于消息通信的并发系统进行建模和分析,因 此,很自然地可以应用于w e b 服务的建模和开发之中很多研究人员已经基于这个思 路对w e b 服务展开了广泛的研究,并取得了一定的成果,但仍有很多问题尚未解决 本文将会在稍后作一个系统的回顾和介绍,此处暂不赘述 为确保多个w e b 服务能成功地协作完成一项复杂工作,人们正越来越重视服务编 排( c h o r e o g r a p h y ) 1 2 】的概念,即从全局观点描述一个业务流程( b u s i n e s sp r o c e s s ) 的多 个参与方( p a r t i c i p a n t ) 的行为,描述它们之间如何协作,从而实现某个共同业务目标的 过程。如果首先制定好一个多方合作的公共协议,而后根据这个协议得到各个参与方 的需求规范,再根据这些规范去设计、实现和测试相应的w e b 服务参与方的系统,那 么就比较容易保证这些服务的组合能实现有关事务的要求在现实生活中,多家公司 进行合作前首先会签订一份商业合同以明确各方职责,这份。合同”与这里的。公共 协议”类似 目前,有关w e b 服务实现研究的多数工作还是从局部的观点研究w e b 服务的组 合,这一观点通常被称为“编制”( o r c h e s t r a t i o n ) ,也就是从局部观点出发研究如何把 多个服务组合起来以得到一个组合服务,其代表语言是w s - b p e l 1 3 】w s - b p e l 的 设计目标是针对参加w e b 交互的一个角色,方便地描述一个w e b 服务所实现的商业处 理流程行为,其核心是描述一个角色为完成自己的行为而调用其它w e b 服务的过程 塑笙迨一 这种观点没有涉及w e b 服务之间的对等协作,没有把参与方作为组合过程中独立、平 等存在的一个重要概念一些研究者已经认识到这一问题【1 4 】,据此提出了服务编排 与协作的思想这种思想及其衍生出来的技术对于复杂w e b 服务应用系统的开发将是 非常重要的 国际上有关通过w e b 服务的协作实现复杂组合服务的研究主要围绕两类规范语 言展开:一类是以w 3 c 所提出的w s c d l 为代表的w e b 服务编排( c h o r e o g r a p h y ) 语 言【1 5 】,另一类是以o a s i s 所提出的w s b p e l 为代表的w e b 服务编制( o r c h e s t r a t i o n ) 语言【13 1 服务编排从全局的观点出发,描述如何通过一组服务之间的对等协作而实现一个 共同目标用w s c d l 写出的规范关注服务参与者之问的交互和依赖关系,包括控制 流关系,数据流关系、消息关联、时间限制和事务依赖等等服务编排并不刻画那些对 外部观察没有直接影响的动作,比如服务内部的计算和数据传递w s - c d l 的设计目 标就是为了用于定义由多个w e b 服务参与的多方协议,通过描述w e b 服务之间的信 息交互,以刻画它们和客户之间所呈现的外部行为由于服务编排领域的研究起步时 间不长,人们对许多问题的认识还不清楚,w s - c d l 目前是一份w 3 c 候选推荐标准 ( c a n d i d a t er e c o m m e n d a t i o n ) ,最新的版本是2 0 0 5 年1 1 月制定的然而,如文献 1 6 】 所指出的,w s c d l 语言还相当不成熟,还有很多问题尚未解决这也说明,这个领 域的研究尚处于起步阶段,还有很多问题有待深入研究 总之,随着w e b 服务领域的开发和应用的飞速发展,对于w e b 服务编排和协作 的理论基础提出了迫切的要求这方面的深入理论研究可以帮助我们进一步理解w e b 服务的本质和问题,为w e b 服务领域的发展奠定坚实的基础同时,理论研究取得的 成果也具有潜在的应用价值,能为新型的w e b 服务开发工具提供技术和方法,例如支 持w e b 服务开发中的静态类型检查和深度静态分析,验证w e b 服务的无死锁性和功 能正确性不存在无端信息外泄,检查和排除冗余通讯,从w e b 服务编排自动生成参 与方的功能规范,对w e b 服务的实现正确性做一些检查等等总之,在这个方面开展 进一步的研究工作是非常必要的 1 2 本文主要研究内容 如前所述,w e b 服务编排和协作的理论问题对于w e b 应用技术实践的进一步发 展是非常重要的,是一个值得重视的研究问题这方面的研究,可以帮助我们进一步 深入理解作为w e b 服务和应用基础的“编排”与。协作”的概念,弄清其基本属性和 规律性,并进一步认识编排语言的设计与实现等方面的问题这一研究所考察的主要 对象是分布在i n t e m e t 上各自独立的服务之间的相互协作,并特别关注基于全局观点 ( g l o b a lv i e w ) 研究w e b 服务编排与协作中的各种问题 4 浙江师j i c 大学硕士论文 本文的工作是围绕w e b 服务编排的形式化描述而展开的,主要目标是:建立基于 全局观点下w e b 服务编排的演算模型和独立于具体编制语言方案的演算模型,定义从 编排到编制的投影实现过程,以及对编排投影正确性的分析因此,本文的研究内容 主要包括以下两个方面: 1 w e b 服务编排的演算模型 定义了演算模型的语法和语义:在语法上,通过使用一组算予构造角色进程 之间的“交互”活动,其中包括不会死锁的消息通信活动r 冈。冗;语义上,考虑 到编排是不可执行的抽象规范,因而使用迹语义,强调同步通信,对于并行复合 活动,则采用交错运算基于该轻量级演算模型诱导出了结构同余关系,包括预 期的选择、顺序复合和并行复合的结构律,并证明了编排的无死锁特性 2 w e b 服务编排的投影实现 受o r e 的启发,把o r e 面向服务的特点和丌演算的传名通信机制组合在一 起,定义了d 7 c 丌演算作为编排的实现模型提出了投影o j e c t i o n 的概念,建立 了从编排演算到d r c 7 r 演算的投影p r 丌,并给出了两个关于编排的可实现性语法 条件及其证明系统在此基础上扩展了w e b 服务编排的演算模型及其投影规则, 并通过实例说明了投影实现的正确性 1 3 本文结构 本文共分为五章除本章以外,其余各章组织如下: 第二章简述了w e b 服务的概念以及面向服务的计算,分析了c h o m o g a m p h y 与 o r c h e s t r m i o n 之间的区别与联系,讨论了w e b 服务编排和w e b 服务编制模型的相关技 术工作,最后简要介绍了7 r - 演算的语法及操作语义等 第三章着重研究了w e b 服务编排的演算,给出了该演算模型的语法以及语义, 基于演算模型诱导出了结构同余关系,包括预期的选择、顺序复合和并行复合的结构 律,并证明了编排的无死锁特性 。 第四章研究了w e b 服务编排的投影实现,定义了d r c r 演算作为编排的实现模型, 建立了从编排演算到d r c ,r 演算的投影尸h ,并提出两个关于编排的可实现性语法条 件,给出了其证明系统,在此基础上扩展了w e b 服务编排的演算模型,并通过实例说 明了投影实现的正确性 第五章总结了本文的主要研究内容,并阐述了未来的研究方向 第二章w e b 服务组合及丌- 演算概述 本章概述论文中所涉及的概念和理论,主要讨论w e b 服务和面向服务的计算, c h o r e o g a r a p h y 与o r c h e s t r a t i o n 之间的区别与联系,w e b 服务编排和w e b 服务编制模 型的相关技术工作,以及丌演算的语法和操作语义等内容 2 1 w e b 服务组合 2 1 1w e b 服务和面向服务的计算 随着互联网和网络技术的发展,出现了以网络环境为基础的分布式系统结构这 种新一代软件的运行平台建立在广泛连通的i n t e m e t 基础上,使得i n t e m e t 整体成为了 这一类软件的运行环境这种开放环境具有许多重要的特点:能更好地利用网络上现 有的海量自主资源;具有较松散的结构;可以自然地支持业务伙伴之间的合作,支持 合作伙伴的独立性以及异构性;跨企业跨部门;等等为了解决企业或个人的不同平 台之间的异构性和增强互操作性,w 曲服务( w e bs e r v i c e ) 技术【l 】应运而生 所谓“服务”指的是可提供某种功能的独立计算单元,允许其它服务调用w e b 服务位于i n t e r n e t 上,可以是独立。无状态的业务逻辑,也可能有更复杂的功能和接 口,允许其他应用程序通过i n t e r n e t 连接调用w e b 服务是以s o a p1 2 】、w s d l 【3 】、 u d d i 【4 】等协议为核心,采用基于x m l 通讯的分布式软件组件的实现方式,屏蔽了具 体的底层消息传输协议和端点的消息处理、操作系统和编程语言等导致传统软件组件 异构的特征,支持分布式环境中动态、开放的互操作模式,可用于实现跨平台的应用 一项w e b 服务可以由一组分布在i n t e m e t 各处的模块通过相互协作的方式完成 w e b 服务系统具有难以确定的边界,功能模块可能需要在执行中定位,模块间依赖于 不可靠的网络进行通讯和协作这些情况导致了许多新问题,给w e b 服务的开发提出 了许多新挑战随着w e b 服务应用的发展,这类系统本身也在变得越来越复杂加之 w e b 服务系统本身的并行性、分布性和高度动态性,仅仅依靠开发者的直观认识,将 越来越难以把握所开发的系统的行为在这种情况下,强有力的理论和模型的支持将 会变得越来越重要 目前,面向服务的计算( s o c ) 【1 8 】技术和面向服务的体系结构( s o a ) 1 9 j 已经成为 工业界和研究工作者关注的热点s o a 是一种架构模型,它可以根据需求通过网络对 松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是s o a 的基础,可 以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性作为s o a 架 构中构建新服务、满足业务需求的主要手段,w e b 服务及其组合在业务流程的构造和 5 6 堂堂按大逊迨塞 重组过程中处于核心地位与对象组合、组件组装技术相比,服务组合的应用环境更 复杂。这是因为s o a 环境中的服务是异构的、松耦合的、自主的,存在着动态的交互 关系,缺少中央控制服务组合模型一般应提供如下特性: ( 1 ) 灵活性:服务组合模型应该具有丰富的语法构造,以便够描述复杂的交互场 景,而且能够快速地适应变化 ( 2 ) 可组装:一个服务组合可以看作是一个标准的w e b 服务,并被组装到其他流 程或服务中,构成功能更复杂的服务,因而提高了服务的可伸缩性和重用性 ( 3 ) 会话状态和生命周期管理:与无状态的w e b 服务不同,一个业务流程通常具 有明确的生命周期模型,具有内部状态,支持复杂的交互 ( 4 ) 可恢复性:长时间运行的流程失败的概率远大于普通程序,因此失败处理和补 偿机制是非常重要的流程运行过程中,往往需要等待外界事件,因此对时问信息的 描述也是必要的 s o c 倡导以服务及其组合为基础构造w e b 应用的开发模式,这种开发模式的特 点是由多个分布在网络上不同区域的服务相互协作,实现复杂的w e b 应用参与w e b 应用的服务可能位于世界的任何地方,各自以独立方式表现自己的行为这样,要实 现某种最终的计算目标,不但要求各参与方都具有正确的功能,而且要求它们能彼此 正确地交互在常规的系统开发过程中,人们通常独立开发系统( 即使是并行或分布式 的系统) 中的各个部分,然后进行集成、检查各部分之间的相互关系这种方式常常不 能满足w e b 服务开发的需要许多基于w e b 服务的应用需要通过多个参与方之间的 通讯和协作完成,这些参与方之间的交互可能非常复杂,不仅有基本的同步问题,还 可能需要规定一系列交互通讯之间的复杂顺序关系随着交互变得越来越复杂,采用 局部观点描述这些交互也将越来越困难,从局部观点出发证明这些交互能正确进行就 更困难了 2 1 2 编排( c h o r e o g r a p h y ) 和编制( o r c h e s t r a t i o n ) 随着对跨组织的业务协作认识的加深,人们正越来越重视编排( c h o r e o g r a p h y ) 1 2 1 的概念,即从全局观点描述一个业务流程( b u s i n e s sp r o c e s s ) 的多个参与方( p a r t i c i p a n t ) 的行为,描述它们之间如何协作,从而以实现某个共同业务目标的过程如果首先制 定好一个多方合作的公共协议,而后根据这个协议得到各个参与方的需求规范,再根 据这些规范去设计、实现和测试相应的w e b 服务参与方的系统,那么就比较容易保证 这些服务的组合能实现有关事务的要求在现实生活中,多家公司进行合作前首先会 签订一份商业合约以明确各方职责,这份“合约”与这里的“公共协议”类似 与编排( c h o r e o g r a p h y ) 相对的还有另一个概念,即4 编制”( o r c h e s t r a t i o n ) ,也 就是从局部观点出发研究如何把多个服务组合起来以得到一个组合服务,其代表语言 7 是w s b p e l 1 3 】为了给多个w e b 服务之问交互的设计和执行提供一个开放的、基 于标准的协议,许多厂商、组织在原有w e b 服务技术的基础上提出了o r c h e s t r a t i o n 及 c h o r e o g r a p h y 语言方案 2 1 2 1 c h o r e o g r a p h y 与o r c h e s t r a t i o n 的关系 w 3 c 给出了在w e b 服务中o r c h e s t r a t i o n 和c h o r e o g r a p h y 的明确的定义 2 0 1 o r c h e s t r a t i o n ( 编制) 的定义:一个w e b 服务调用其它w e b 服务以完成某项功能 时所要遵循的次序和状况也就是说,o r c h e s t r a t i o n 是一个w e b 服务为了完成一 定的功能所必须遵守的交换模式 c h o r e o g r a p h y ( 编排) 的定义:一套c h o r e o g r a p h y 的用途在于对次序以及各种处理状 况作出的定义在为了达到一定的目标而进行的信息交换中,让多个协同但独立的 代理程式( a g e n t ) 能够按照这套次序所规定的方式运行,w e b 服务的c h o r e o g r a p h y 则主要关注在服务与其使用者之间的互动任何w e b 服务的使用者无论是以自动 方式或其他方式都是服务的客户端( c l i e n t ) ,都必须在进行互动的同时被清楚而良1 好的规范而在这些交互中,可能包括相当多个别的互动,通过这些个别的互动 组成了一次完整的交互这种交互包括其消息协定、界面、次序以及相关的逻辑, 就被视为c h o r e o g r a p h y 基于w e b 服务组合的业务应用大致可分为两类;一类业务是由一个组织机构执行 的业务流程,虽然其执行过程中可能需要调用和借助其他服务,但流程的业务目标是 由该机构自己的内部需求所决定的另一类业务是由多个独立组织

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论