(计算机科学与技术专业论文)支持qos的web服务选择.pdf_第1页
(计算机科学与技术专业论文)支持qos的web服务选择.pdf_第2页
(计算机科学与技术专业论文)支持qos的web服务选择.pdf_第3页
(计算机科学与技术专业论文)支持qos的web服务选择.pdf_第4页
(计算机科学与技术专业论文)支持qos的web服务选择.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(计算机科学与技术专业论文)支持qos的web服务选择.pdf.pdf 免费下载

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

文档简介

北京邮 乜人学硕士学位论文 支持q o s 的w e b 服务选择 摘要 w e b 服务作为目前最新颖的分布式计算模型,有力的整合了 i n t e r n e t 上的各种资源。复杂的w e b 服务可以由w e b 服务组件和基 本服务构成。现有的w e b 服务组合技术研究重点在于服务的自动组 合。服务组合的研究主要关注于如何完全自动的产生w e b 服务的执行 计划,另外由于在i n t e r n e t 上存在众多相同服务,所以需要研究如 何选择合适的服务用于组合服务的执行。 对于具有相同语义的服务如何选择用于执行的具体服务就需要 涉及到服务的非功能属性。服务的用户可以用q o s 参数来描述组合服 务必须具有的特征。 在动态的环境中,服务运行可能会失败。这时组合服务就需要将 对服务的调用切换到与之具有相同语义的另一服务。所以需要进行服 务的重选择,当然选择结果需要综合待选择服务的q o s 和选择算法运 行时的代价,必须保证选择结果满足用户的要求。 本文研究的重点就是在动态环境中如何进行服务选择,在考虑选 择算法运行时间的情况下如何保证服务重选择的结果符合甩户限制。 本文提出的保证q o s 要求的选择算法( s a a q ,s e l e c t i o n a 1 9 0 r i t h mo fa s s u r i n gq o s ) 基于遗传算法,并对传统的遗传算法 进行了改进。它以待选择的服务的q o s 作为评估参数,建立了一个评 估服务满意度的适应度函数,并作为评估标准。利用遗传算法的交叉、 变异、选择算子在解空间进行搜索。 本文中对于不同结构的组合服务执行计划,采用了不同的表达 式,通过组合服务的单个服务的q o s 进行组合服务q o s 的计算。对于 不同服务的不同q o s 参数数值,由于它们之间常常相差几个数量级, 这样需要对这些数据映射到固定长度的区间,以便评估函数能够进行 公平的评估。s a a q 算法用来搜索满足q o s 要求的最优个体的方法是: 在遗传的每一代种群筛选出来符合用户q o s 要求的最优个体,将它加 入队列,经过多代的遗传进化,保证了在s 从q 队列里丽具有相当接 近最优解的个体,在经过多代的进化后,根据适应度函数值的变化来 判断是否接近了全局最优解,或者判断最优个体已经达到了可接受的 程度,这时选择算法的结果和算法自身的运行代价达到平衡。当达到 算法的运算时间和运算结果的平衡时终止算法,从而得到一个比较满 意的符合用户需要的结果。 在本文最后进行了服务选择和服务执行的仿真实验,实验证明 北京| f | j l u 人学坝l 学位论义 摘要 s a a q 算法是相当有效的。 关键词w e b 服务服务组合q o s 遗传算法 j ! 室堂皇盔堂堡主兰垡堡塞! ! ! ! 垦鉴! 一 q o s - d r i v e ns e r v i c es e l e c t i o n a b s t r a c t w e bs e r v i c ei san e wa p p l i c a t i o nn l o d e lf b rd e c e n t r a l i z e dc o m p u t i n g a n di ti sa l s oa ne f 诧c t i v en l e c h a n i s mf b rt h ed a t aa n ds e r v i c ei n t e g r a t i o n o nt h ew e b t h ec o m d l e xw e bs e r v i c ei sm a d eo ft h ew e bs e r v i c e c o m p o n e n t sa n dt h ee l e m e n tw e bs e r v i c e s w e bs e r v i c ec o m p o s i t i o n o f f e r sas i m p l ew a yf o rt h ec r e a d o no fc o m p l e xa p p l i c a c i o n s t h ec u r r e n tr e s e a r c ho fw e bs e r v i c ec o m d o s i t i o nf b c u s e so nm e a u t o m a t e d c o m p o s i t i o n i ti n c l u d e sa u t o m a t i c a l l yg e n e r a t i n gs e r v i c e e x e c u t i o np l a na n ds d e c t i n gs e r v i c e s t h e r ea r es om a n ys a m es e r v i c e sj n t h ei n t e m e tt h a to n eo fm e mh a st ob es e l e c t e dt or u ni nt h ee x e c u t i o n p l a l l t h es e m a n t i ct e c h n o l o g yi si m p o r t a n c eo fa u t o m a t e dg e n e r a t i o no f t h ec o m p o s i t i o np l a na n ds e r v i c es e l e c t i o n t h ec o n c n 缱es e r v i c ew h i c he x e c u t e si nr u n t i m ei sd e c i d e db vt h e n o n f u n c t i o np r o p e n i e so fs e r v i c e s t h es e i c e sw h i c hh a v et h es a m e s e m a n t i ci n f o m l a t i o nh a v ed i f 免r e n tn o n f u n c t i o np r o p e n i e s a n dt h e c o m p o s i t i o no fs e r v i c e si su n d e rt h eu s e ro rs e r v i c ed e s i g n e rc o n s t r a i n t s t h ec o n c r e t ee x e c u t i o np l a l li sa b l et ob er e a l i z e db yt h eq u a l i t yo f s e r 、,i c e ( q o s ) t h es e r v i c ew o u l df a i lf b rv a r i o u sf a c t o r sw h e nac o m d o s i t i o ns e r v i c e n 】n si nt h ed v n a r n i ce n v i r o n m e n t s oa n o t h e rs e r v i c ew h i c hh a st h es a m e s e m a n t i ci n f o r m a t i o nt ot h ef a i l e ds e r v i c es h o u l db ei n v o k e d r e p l a n n i n g s u c hac o m p o s i t i o nm a yb en e e d e dw h e n e v e rd e v i a t i o n sf 沁mt h eq o s e s t i m a t e so c c u r i ti sn e c e s s a l - yf o rt h ec o m d o s i t i o n so o sa n ds e l e c t i o n a l g o r i t h mt of b l l o wm ec o n s t r a i n t s t h e s ea r ed i s c u s s e di nt h i sp a p e r t h es e l e c t i o n a l g o r i m mo fa s s u r i n gq o s( s a a q ) t h ep a p e r p r o p o s e si sa na p p r o a c hf b rq o s a w a r es e r v i c ec o m p o s i t i o nm a tb a s e s 2 e n e t i ca l g o r i t h m s i ts e l e c t ss e r v i c e sw i t ht h e i ro o s i te s t i m a t e st h e e x e c u t i o np l a nb vf i t n e s sf b n c t i o n i ts e a r c h e st h ep o t e n t i a ls 0 1 u t i o n a c c o r d i n gt ot h e c r o s s o v e ro p e r a t o r ,t h em u t a t i o n o p e r a t o ra n dt h e s e l e c t i o no p e r a t o ro fg e n e t i ca l g o r i t h m s t h ep 印e rw o r k sa tt h eo v e r a l lq o so fac o m p o s i t i o nb ya g g r e g a t i n g t h eo o so ft h ei n d i v i d u a ls e r v i c e s a n dm ea l g o r i t h mm a p st h ev a l u e so f q o si n t oac o n s t a n tl e n g t hc l o s e di n t e “a lf o re s t i m a t i n gi n d i v i d u a lf a i r l v , b e c a u s et h ev a l u e so fq o sa r ev a r i o u s s a a oi n s e r t st h eb e s ts 0 1 u t i o nt o aq u e u ef r o mt h ep o p u l a t i o na te a c he v o l u c i o ns t e p a n dc h e nt h eq u e u eo f 北京l 孵b 大学硕i :学位论文a b s t r a c t s a a qh a st h ea p p r o x i m a t i v e l yb e s ts o l u t i o nt h r o u g he v o l u t i o n s i f m a x i m u mf i t n e s s v a l u e t e n d st oac o n s t a n to r g e n e r a t i n g t h eb e s t i n d i v i d u a lc a nb ea c c e p t e d ,t h es a a qt e r r i l i n a t e s t h ei n d i v i d u a lt h e s a a q r e t u r ni sa p p m x i m a t i v e l yu n d c rt h eu s e rc o n s t r a i n t s a n di ta r r i v e s a tt h eb a l a n c ep o i n tb e t w e e nt h ec o s to fs a a qa n dm eb e s ts 0 1 u t i o n t h e e x p e r i m e n cp r o v e st h ea i g o r i t h mi sa v a i l a b l ef i n a l l y 1 ( e yw o r d sw e bs e r v i c e s ,s e f v i c ec o m p o s i t i o n ,q u a l i t yo fs e r v i c e , g e n e t i ca l g o r i t h m j ! 塞塑皇盔兰堡圭堂垡鲨奎! ! 盟一 声明 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名;必日期:2 翌! :主兰主 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论裒不属于保密范围,适用本授权书。, 本人签名:趔日期:鲨! :之:! 苎 导师签名:薤瓤日期:2 丝堑! :丛 北京邮电大学硕士学位论文 第一章绪论 第一章绪论 本章主要介绍本文在基于q o s 的w 曲服务( w e bs e r v i c e s ) 组合方面的研究 背景。介绍了本文作者在攻读硕士学位期间主要从事的工作。最后简单概述了本 文的结构。 1 1 研究背景 w e b 服务为在不同的平台和软件结构下运行的软件应用程序提供了一种标 准的交互方法【l 】。w 曲服务是基于t c p ,i p ,h t t p ,x m l 等规范而定义的具有 w 曲上链接文档浏览、事务自动调用、服务的动态发现和发布等功能的软件结构。 w e b 服务作为一种网络操作能够利用标准的w 曲协议及接口进行应用间的交互。 1 1 1 w e b 服务 w e b 服务作为目前最新颖的分布式计算模型,使得分布的软件组件采用了全 新的通讯和发布机制,使得新型的分布式软件可以跨越整个i n t e m e t ,通过分布 在网络不同位置计算机、资源的共同协作来完成一个应用。这样w 曲服务采用 分布在网络中的资源构成了一个虚拟的计算机系统,这些资源的重用和协同工作 就涉及到了复杂服务的组织和表述:i t 资源的按需使用这两方面的问题。 一般现实中的应用都是一个复杂的体系结构。而w e b 服务技术为了保证单个 服务的重用性,简化服务逻辑和实现,就会设计得不太复杂。这样要实现现实中 的应用就必须使用多个简单的w 曲服务来组合完成现实应用。 w e b 服务组件( s e r v i c ec o m p o n e n t ) 或基本服务( e l e m e n t a r vs e r v i c e ) 将成为 应用软件的基本模块,w 曲服务的组合也将成为软件开发的重点。 1 1 2 、v e b 服务的组合 在现有的w e b 服务组合技术中需要考虑w 曲服务组件的逻辑关系和时序关 系、服务执行的有序性、服务执行的正确性 2 】。目前已开发出了用于w e b 服务 的商业流程执行语言( b p e l 4 w s ,b u s i n e s sp m c e s se x e c u “o nl a n g u a g e ) 【3 1 , w e b 服务协调( w s c o o r d i n a t i o n ) 【4 】和事务( w s t r a n s a c t i o n ) 5 】等协议用于支 持稳定的服务交互。另外w 曲服务的安全、可靠消息机制这些方面都是服务组 合需要考虑到的。w 曲服务的协议体系如图1 一l 所示。 北京1 1 | 1 j u 大学坝l 学位论文 第一章绪论 。一一。攀。誊一n - ,冀登“”、 u 搿i 罄u s 垂n e s s 8 p 嚣乏4 邺? 一曩? 一奠? p r 。k e s s q s w s d l ,p o l i c 羚麓爨蓦姻癸i 秘鞠鞲萋笺蕊鏊 d e s t p 搬 s e c u r l 罐 。 臻ij r e “ab i i 露。 h 鬯s s l 澹 _ | 若弗jj 嚣。 ;i “ 群螽添i 逸t i 磅n 5 i 一 o e 巍_ ;c l i 秘畿i 鲫 q u 矗l i t y 静fs e r v e e s o 矗p ( 差_ 铝g i c 嗣m e 辐謦鬈i n 曲蛾鹾鲤蠢稿t 舀鳆 s 。m t a n s p o 嫩 x 颡乙,e h c 烈龇g 、q 建囊黔甚磊菇l 稳璺 e n :筌h g 图1 1w e b 服务协议体系 w e b 服务的组合可以在服务产生前静态的完成,也可以在运行时动态的创建 【1 8 】【1 9 】。复杂的w 曲服务可以由服务组件和基本服务构成。服务组件构成服务, 服务可以由外部用户使用,服务组件封装了特定的服务功能和相关的数据它们之 间相对独立。 为了实现w 曲服务的组合需要能够定义和表述服务组件;发现w e b 服务组 件和基本服务;对于组合出来的w e b 服务进行高效的质量管理满足用户提出的 服务请求。 1 1 3w e b 服务组件的选择 在分布式的环境中,不同的服务组件可以提供相同的功能,如果构成某个 w e b 服务的某一组件发生了变化,比如组件功能改变或组件接口改变,或者组件 服务不可达,为了使该服务的执行不受影响,则该服务的执行必须进行服务组件 的切换。如果服务组件的失效是在服务执行的过程中发生的,组合服务就需要对 f 服务组件的调用动态切换到与之具有相同功能的另一服务组件。 在w 曲服务环境中,服务组件的特性可以分为功能特性和非功能特性。具有 相同的功能的服务组件一般他们的非功能特性不同,服务的组合和服务组件的切 换在保证服务执行正常的前提下需要考虑到服务组件的非功能特性是否能够满 足用户对于服务的要求。这些非功能特性包括了服务组件的价格、执行时间、可 用性和可靠性等指标。因此在服务组合过程中,可以考虑依据服务用户对于服务 指标的需求选择最符合使用者需要的服务。 这些服务指标从不同的方面刻画了服务组件的非功能特性,属于服务组件 q o s 的范畴。服务的用户可以依据这些q o s 参数提出需要的组合服务必须具有 的特征,例如尽可能的快、尽可能的便宜、尽可能的可靠。另外还可以对于组合 服务的q o s 提出各式各样的限制条件,例如组合出来的服务总的执行时间不超 过2 秒等。这样用户描述的组合服务特征和限制条件就成为了服务组合中服务组 件选择的依据。 北京邮j u 人学项t j 学位论文 第一章绪论 组合服务是通过不同的服务组件的交互形成一个提供特定业务功能的服务, 它是服务组件组合的结果。服务组合过程包括了服务组件的功能描述,它表示了 具有相同功能的服务组件的集合,称之为任务( t a s k ) 【6 ;任务间的逻辑关系和 时序性的确定和描述服务执行流程;以及为任务选取某个特定服务组件的过 程。 1 1 4 服务组件动态切换的问题 本文主要内容就是依据用户对于组合服务提出的q o s 要求,为任务选择合适 的服务组件,并且服务组件选择算法需要考虑算法自身运行对于组合服务执行的 影响。因为在组合服务的执行过程中由于存在服务组件的动态切换,所以必须根 据用户提出的0 0 s 要求选取新的可用服务组件,而新的服务组件的选取过程 ! ;l 包含在组合服务的执行过程中也会占用一定时间,因此必须在服务组件选择算法 中考虑其自身的时间因素。本文为解决这一问题提出了保证0 0 s 要求的选择算 法s a a q 。 本文假定在服务组合中下面这三个前提已经具备: 通过服务发现己经确定了服务组件集合任务; 服务执行流程已经确定; 每个任务中的服务组件,具有相同语义和服务接口,具有不同的q o s 参 数,且0 0 s 参数已知。 1 2 主要工作 本文作者在硕士研究生期间参与了国家8 6 3 计划重大课题“支持多媒体 和移动业务的软交换系统”( 项目编号:2 0 0 2 a a l 2 1 0 1 2 ) 的科研工作。负责了局 端用户属性数据的管理,移动拜访位置寄存器( v l r ) 、移动短信系统的研发。 主要工作包括了: 1 开发测试了s i p 和h 3 2 3 用户注册鉴权模块。电话呼叫过程中主叫用户 和被叫用户的鉴权模块; 2 用户数据库业务信息配置模块,补充业务维护模块; 3 移动拜访位置寄存器( v u t ) ; 4 移动短信系统。 本文作者还参与了国家9 7 3 项目“新一代互联网体系结构理沦研究”项 目中的子课题“新一代互联网服务模型和服务管理理论”的研究工作。主要r 作 包括了: 1 学习研究了关于i t u t y l o o ,y 1 0 l ,y 1 1 0 ,y 1 3 0 标准; 2 w s d l 标准和o g s a 体系结构和w s r f 协议,r d f 相关标准; 3 浏览了关于语义w e b ( s e m a n t i cw e b ) 、本体( o n t o l o g y ) 、用于服务的w e b 本体语言( o w l s ,w e bo n t o l o g yl a n g u a g ef o rs e r v i c e s ) 等相关的知识; 4 调研了已有的关于w e b 服务的研究成果,试验性质的开发了一个使用 w 曲服务构建的s 口代理服务器( s 碑p m x v ) ; 5 研究了在w e b 服务组合领域使用的技术及基于q o s 的w e b 服务组合; 6 学习了服务组合中使用的组合优化算法一一遗传算法( g e n e t i c 型尘删坐丛兰型盥苎丝垡:l 一 董= 童缝丝 a l g o r j t h m ) : 7 采用了遗传算法来进行服务组合,研究了在服务组合中服务选择算法对 于组合服务执行过程的影响,提出了相应的解决方法。 1 3 论文主要内容 。亳毫毒黧 究了在因特网的复杂环境下,如何有效、按照用户需要提供一定 质量的应用服务。 。一。 第二章将对w e b 服务进行简单介绍。 第三章将介绍w e b 服务的组合技术。 第四章将介绍目前基于q o s 的w 曲服务组合算法。 第五章将介绍遗传算法的原理、应用和理论。 第六章将介绍本文提出的改进的服务选择算法。 ,第七章将分析实验仿真数据,对于本文提出的服务选择算法s a a q 进行评 们r 。 第八章对于论文进行总结。 北京邮电大学硕士学位论文 第二章w 曲服务技术 第二章w e b 服务技术 本章简单介绍了关于w 曲服务的概念、技术特点、体系结构。 2 1 面向服务架构的概念 w e b 服务的许多概念来至于面向服务架构( s 0 a ,s e r v i c e o r j e n t e d a r c h i t e c t u r e ) 技术,它是s o a 技术的一个实现。s o a 是一种特殊的软件架构, 在它里面最重要的特点就是它将服务的实现与服务接口相分离。服务的请求者不 需要关心服务如何执行,服务是怎么实现的,他们只知道服务请求的接口格式和 服务合约( c o n a c t ) 。 s 0 a 结构可以简单的描述为“发现、绑定、执行”( f i n d ,b i n d ,e x e c u t e ) , 服务消费者( s e “i c ec o n s u m e r ) 向第三方的服务注册中心( r e 2 i s t r v ) 请求他需 要的服务,如果服务注册中心有满足请求的服务,就提供给服务请求者这个服务 的地址和合约,服务请求者使用合约规定的请求、响应消息格式和服务提供者 ( s e r v i c ep m v i d e r ) 交互,结构如图2 。l 所示。 图2 - 1s o a 结构 s o a 结构由服务消费者、服务提供者、服务注册中心、服务合约、服务代理、 服务租约6 个实体构成,它们共同完成服务的“发现、绑定、执行”。s o a 具有 服务可发现和动态绑定,服务自包含和模块化,强调互操作性,松耦合性,可寻 址网络接口,粗粒度接口,位置透明,可组合,支持自愈等特性。 7 】 北京n 丈学硕:e 学位论文第二章v l 铀服务技术 w e b 服务实现了许多s o a 的概念,但是当前它不支持服务租约,也没有正 式的规范提供服务q o s 等级。用w 曲服务技术去实现一个分布系统并不意味着 一个分布对象架构就成为了s o a ,w 曲服务技术也不一定是s o a 的最好实现。 1 2 2w e b 服务模型 w 曲服务是一个描述采用标准的x m l 消息通过网络可以访问的操作集的接 口 8 】。w e b 服务用于解决程序与程序之间的交互,实现w 曲服务的关键技术是 扩展标记语言( x m l ,e x t e n s i b l em a l ( e u pl a n g u a g e ) ,简单对象访问协议( 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 ) ,w 曲服务描述语言( w s d l ,w 曲s e r v i c e s d e s c r i p t i o nl a n g u a g e ) ,统一描述、发现和集成( 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 i i o n ) 。它能够在i n t e m e t 上面通过w e b 接口提供计算能力和 资源。w e b 服务通过w s d l 描述服务接口,使用u d d i 将服务注册、发布到注 册中心,采用s o a p 封装调用请求和服务响应消息,目前w 曲服务的传输采用 h t t p 协议承载。 w e b 服务使用标准的、正式的v i l 来描述服务交互的所有必须细节,包括 了消息格式、传输协议和位置。它的接口隐藏了实现的细节,可以保证它独立于 编写它的语言和实现它的软硬件平台。这样基于w 曲服务技术实现的应用具有 松耦合性,w 曲服务能够组合完成复杂的功能,实现商业事务。 w e b 服务的架构建立在服务提供者( s e r v i c e p m v i d e f ) 、服务注册中心( s e r v i c e r e g i s t r y ) 、服务请求者( s e r v i c er e q u e s t o r ) 三者交互的基础上。服务提供者定 义它所能提供的w e b 服务描述,发布到注册中心。服务请求者依据需要到注册 中心检索服务,找到合适的服务描述,根据服务描述,绑定服务提供者提供的服 务并调用它。图2 2 表示了w 曲服务的架构。 北京邮电大学硕士学位论文 第二章w 曲服务技术 图2 2 w e b 服务结构 w e b 服务架构中服务提供者是服务的拥有者,它是提供服务接入的平台。服 务淆求者需求特定的功能,它查找、调用( i n v o k e ) 或者启动与服务的交互,它 既可以是人使用浏览器来请求,也可以是程序自动调用。服务注册中心保存了服 务的描述用于检索,服务请求者可以查找服务得到绑定信息。服务注册中心在 w 曲服务的架构中不是一个必须的角色,因为服务请求者可以通过本地文件、 f r p 站点、w e b 网站、广播发现服务( a d s ,a d v e r 廿s e m e n ta n dd i s c o v e r yo f s e r v i c e s ) 等方式得到它需要的服务描述。 在w e b 服务的架构中服务描述的发布( p u b l i s h ) 、服务描述的查找( 1 0 0 k u p ) 和发现( n n d ) 、服务的绑定和调用这三个行为是不可或缺的。它们既可以依次发 生也可以重复发生。在w e b 服务的调用过程中,首先服务的描述必须发布出来 以便服务清求者可以找到它。然后服务的请求者可以直接的得到服务描述或者在 服务注册中心查询需要的服务描述。服务的发现过程可以在程序设计阶段静态的 得到服务描述,也可以在程序运行时动态得到服务位置、绑定服务执行。最后服 务的调用需要服务请求者使用服务描述中的绑定细节定位、连接、调用服务。 在w e b 服务的架构中服务是一个软件模块布置在可以访问的网络平台上,它 的接口描述在服务描述文件中,它由服务提供者提供。它既向服务请求者提供服 务,又可以作为服务请求者调用其他的w 曲服务。服务描述中包含了服务接u 和实现的细节,包括了数据类型、操作、绑定信息、网络位置,也能够包括帮助 服务发现和使用的分类信息以及其他的元数据( m e t a d a t a ) 。 北京| | 1 | j 电大学顿_ :学位论文 第二章、b 服务技术 2 3w e b 服务的架构 w e b 服务的运行,需要在w e b 服务体系的每一层具有一系列的标准和协议。 w e b 服务协议栈的概念结构如图2 3 所示。 b p e l 4 w s w s f l x l a n g 2 3 1 网络层 x m lx m h t t p h t t 图2 - 3 w e b 服务协议栈 w e b 服务协议栈的底层是网络层,w 曲服务的交互必须通过网络层的某种具 体的协议承载,事实上在i n t e r n e t 上w e b 服务的传输协议是h t t p 。 2 3 2s o a p s o a p 9 作为标准的基于x m l 的消息封装机制用于文档通信和远过程调用 ( r p c ,r e m o t ep r o c e d u r ec a u ) 。s o a p 消息由s o a p 的封装、s o a p 消息头、 s o a p 消息体构成。s o a p 结构如图2 4 所示。 北京邮电大学硕士学位论文 第二章、e b 搬务技术 图2 4 s o a p 结构 s o a p 可以用于单向通信,也可用于复杂的事务,如电子文档交换( e d i e 1 e c t r o n i cd o c u m e n c i n t c r c h a n g e ) 和r p c 等。一个s o a p 消息如图2 - 5 所示。 2 3 3w s d l 图2 - 5 s o a p 例子 w s d l 1 0 】是基于x m l 的服务描述语言,足实际上的服务描述标准。它描述 了w e b 服务交互的最小信息集合,通过对于w s d l 的扩展或进一步发展可以将 诸如事务上下文、服务质量、服务间关系等信息加入到服务描述文档中。 w e b 服务的描述分为抽象定义和具体定义两部分,w s d l 组成的概念模型如 图2 6 所示。 北京f i | | j 电火学颂l 学位论文 第二章、b 服务技术 图2 - 6 w s d l 模型 w s d l 抽象定义用消息( m e s s a g e s ) 来描述w 曲服务发送和接收的内容,消 息交换模式( m e s s a g ee x c h a n g ep a t t e m s ) 定义了一个操作( o p e r a t i o n ) 中的消息 顺序和消息数。一个操作与消息交换模式中的一或多个消息相关。一个接口 ( i n t e r f a c e ) 包括了一些与传输格式和协议无关的操作。 w s d l 具体定义用绑定( b i n d i n g ) 来规定接口传输格式和协议,服务端点 ( e n d p o i n t ) 规定绑定的网络地址,最后服务( s e r v i c e ) 组织服务端点成为一个 w 曲服务提供的接口。 w s d l 文档结构如图2 7 所示。 ffiti一“,f = = = 暑粤掣l 黑! 登婴+ 多 = :辩o 掣蟹登尊 一f h ¥ 一 _ w 8 吐i * 姒e “a c cg 匿受垂曼垂酉 一* w s d k 州e 审 f ,:i = :o ? 、 图2 - 7 w s d l 结构 北京邮电大学颂士学位论文 第二章w e b 服务技术 w s d l 文档中,类型( t y p e s ) 定义了消息,通常使用w 3 c 的x m ls c h e m a 规范的数据类型。 接口( i n t e r f 如e ) 封装了抽象操作和消息的集合。规定了操作用到的消息类 型和消息交互顺序。 绑定说明了接口消息的格式和传输协议。 服务包括了一组服务端点,服务端点定义了服务绑定的网络地址。 2 3 4u d d l w s d l 、s o a p 、h t t p ( 或者是别的传输协议) 提供了w 曲服务交互最基本 的协议栈。但是没有服务信息的发布、发现w 曲服务的使用就只能局限在较小 的范围内,每一个w e b 服务都会变成孤立的服务节点,失去了它能在i n t e r n e t 范围内提供服务的意义。 u d d i 1 l 】提供了服务的发布和查找服务描述的方法。u d d i 数据实体提供对 定义业务和服务信息的支持。w s d l 中定义的服务描述信息是u d d i 注册中心 信息的补充。u d d i 提供对许多不同类型的服务描述的支持。因此,u d d i 没有 对w s d l 的直接支持,也没有对任何其它服务描述机制的直接支持。u d d i 组织已经发布了如何将w s d l 文档映射到u d d i 注册中心的文档 1 2 。u d d i 数 据类型如图2 8 所示。 图2 8u d d i 数据类型 b u s i n e s s e n t i t y 提供关于商家的信息,可以包含一个或多个b u s i n e s s s e r v i c e 。 这个商家是服务提供者。w e b 服务的技术和业务描述在b u s i n e s s s e r v i c e 和其 b i n d i n g t e m p l a t e 中被定义。每个b i n d i n g t e m p l a t e 包含一个对一个或多个 t m o d e l 的引用。t m o d e l 被用于定义服务的技术规范。 北京邮电人学硕t 学位论文第三章、b 服务组台技术 第三章w e b 服务组合技术 w e b 服务的组合就是多个1 j e b 服务通过某种机制协同工作,来实现一个应用 目标,满足用户的特定需求,包括企业应用的集成。w 曲服务在i n t e m e t 上提供 了与平台和网络无关的操作,一个用户( 服务请求者) 可以在服务注册中心查找 它需要使用的服务,然后从检索结果中选择合适的服务来使用。当一个用户的服 务需求不能被任何可用的服务满足时,通过组合已有的w 曲服务有可能提供用 户所需的服务。服务的组合增加了w 如服务的灵活性,可以为用户提供更多的 灵活性和更高的价值。 服务组合过程可以分成服务发现、组合逻辑定义、组合逻辑说明、服务执行 几个阶段。 目前的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 。 w 曲服务o r c h e s t r a t i o n 模式描述了w 曲服务交互的顺序,服务执行过程,服务 的执行中有一个中心点集中控制服务执行流程。o n 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 m p h y 模式通过一个规范详细说明服务组件如何协作以得到组合服 务。 在复杂的分布式系统中,w 曲服务的组合增加了w e b 服务的重用性,向用户 提供了解决复杂应用的简单方法。但是由于网络环境和应用的复杂性,组合服务 的各个部分可能运行在不同的服务容器( c o n t a i n e r ) 中,彼此位于不同的信任域, 因此服务组合机制必须保证组合服务的连通性、非功能的o o s 属性、正确性和 可扩展性。只有保证服务的连通,才能根据w 曲服务的输入输出消息进行推理、 决定采用哪一个w 曲服务用于组合。另外组合服务的开发者也需要保证象时间 性、安全、可靠性等非功能q o s 属性。组合服务的正确性需要通过验证服务组 件的属性进行检验。最后由于组合出来的应用可能已相当复杂的调用顺序来调用 多个服务,因此w e b 服务的组合框架必须支持大量服务组件,具有可扩展性。 由于i n t e r n e t 上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 o r k n o w ) 和人工智能规划( a ip l a n n i n g ) 。 3 1w e b 服务组合框架 1 3 】提出了一个抽象的w 曲服务组合框架,它描述了w e b 服务自动组合的过 程和参与方。这个框架不考虑关于实际组合中涉及到的平台、语言、组合方法等 细节。w e b 服务组合框架如图3 1 所示。 北京邮电大学硕士学位论文 第三章聃r e b 服务组合技术 s e r v 图3 1w e b 服务组合框架 框架中表示了服务组合过程的参与方:组合服务的清求者和组合服务的提供 者。框架中还包含了翻译器( t r a n s l a c o r ) 、进程产生器( p r o c e s sg e n e f a t o r ) 、鉴 别器( e v a l u a t o r ) 、执行引擎( e x e c u t i o ne n g i n e ) 、服务仓库( s e r v i c er e p o s i t o r y ) 。 翻译器将组合服务参与方外部使用的语言翻译成进程产生器使用的内部语言。对 于每一个请求进程产生器试着利用服务仓库里的可用服务产生一个服务组合计 划,来实现这个请求。如果进程产生器对于一个请求生成了多个计划,鉴别器就 比较这些计划,从其中筛选出最优的计划送交执行引擎。执行引擎执行组合计划, 将产生的结果交给服务提供者角色,由服务提供者向服务请求者提供服务结果, 这样使w 曲服务组合过程对于服务请求者透明。 一般来说w e b 服务自动组合过程包括了服务表述、语言翻译、组合进程产生、 组合服务评价、组合服务执行5 个阶段。 单个服务表述阶段就是服务提供者将他们提供的原子服务在市场上发布,描 述w e b 服务的基本属性包括了信号、状态、非功能值。信号就是w 曲服务的输 入输出和异常,是w e b 服务执行过程中的数据流。状态用先验条件( p r e c o n d i t i o n ) 、 后验条件( p o s t c o n d i t i o n ) 来描述,表示了在客观世界里从一个状态到另一个j 状 态的迁移。非功能值是用于评价服务的参数,通常描述了服务的o o s 特性,例 如价格、品质、响应时问。 在语言翻译阶段,将外部的服务说明变换成内部的服务说明。一般在服务组 合中,外部说明用于增强服务的可访问性,可以容易的表达服务能够提供什么功 能,需要什么样的支持( 输入的数据、服务的先验条件、需要调用其他的w 曲 服务等) 。通常外部说明与进程产生器使用的内部说明不同,因为进程产生器需 要更加形式化和准确的语言来工作例如逻辑设计语言,因此翻译器在组合过程中 是需要的。 在组合进程模型产生阶段,服务请求者用服务说明语言表达他的需求,进程 产生器通过组合服务提供者发布的已有的原子服务来满足服务请求者的需求。这 个过程的结果就产生了能够满足服务请求者需要的服务组合计划。进程产生器把 服务的功能用作进程模型的输入输出来描述组合服务,进程模型包括了已选择的 原子服务,以及它们之间的控制流和数据流。 组合服务评价阶段主要是从多个满足服务请求者的组合服务计划中,筛选出 最合适的一个。由于w 曲服务数量众多,必然有很多w e b 服务具有同样或类似 的功能,因此进程产生器可能找到多个满足服务请求者需要的组合服务计划。鉴 别器需要使用服务的非功能属性对于组合服务计划进行优化,一般是由服务请求 北京邮i b 大学硕:l 学位论文 第三章w 曲服务组台技术 者在提交服务需求时,描述每个非功能属性的权重,由鉴别器使用优化函数进行 计算,选择得分最高的服务组合计划。 组合服务的执行阶段,将鉴别器筛选出来的最优服务组合计划进行执行。执 行过程可以看着是进程模型中的消息传输序列。前一个服务执行的输出传送给后 一个服务作为输入。服务计划执行完毕就得到了最终符合服务请求者需求的

温馨提示

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

评论

0/150

提交评论