(计算机软件与理论专业论文)网格工作流中服务选择策略的研究.pdf_第1页
(计算机软件与理论专业论文)网格工作流中服务选择策略的研究.pdf_第2页
(计算机软件与理论专业论文)网格工作流中服务选择策略的研究.pdf_第3页
(计算机软件与理论专业论文)网格工作流中服务选择策略的研究.pdf_第4页
(计算机软件与理论专业论文)网格工作流中服务选择策略的研究.pdf_第5页
已阅读5页,还剩95页未读 继续免费阅读

(计算机软件与理论专业论文)网格工作流中服务选择策略的研究.pdf.pdf 免费下载

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

文档简介

- f 摘要 随着网格及相关技术的深入发展,越来越多的企业和组织开始借助于其他机构提供 的资源束完成自己的业务流程。考虑到网格应用的复杂性,传统的手工操作的方式已经 不能满足实际的需求,网格工作流提出的目的就是利用现有的工作流技术来自动执行网 格环境中的业务流程。剐时,鉴于面向服务的计算模式能给应用带来松散祸合、快速整 合等诸多优点,我们采用。服务”来刻画流程中的活动并围绕着流程中“服务”的选择 策略展开了研究。 针对目i i 大多数研究集中于从功能接口的角度考虑服务选择的现状,本文提出一种 基于约束的服务选择方法,从用户、提供肯、功能属性、非功能属性、服务个体和流程 整体六个角度来全面考虑各种约束因素对服务选择的影响作用。其中,本文在假设服务 的功能接口满足用户要求的前提下,主要进行了如下工作: 1 定义了一个服务非功能属性描述模型。通过该模型,建立用户需求与服务特性沟 通的桥梁,为服务 融b 能属性的约束处理提供必要的基础。在该模型,不仅包含了对单 个属性取值范围的定义,而且对多个属性项之间形成的影响关系也进行了刻画,增强了 模型的表达能力。对于具体不同取值类型的属性项,我们给出了与之特点相匹配的描述 方式。 2 以上述非功能属性模型为基础,我们分别定义了用户和提供者对服务的约束形 式。对于用户约束,我们将之分为强制类型、非强制类型、单个服务的约束和对多个服 务形成的整体约束四种类型,并以流程整体服务质量为例,采用s w r 算法讲述了将约束 条件从隐含方式转换为显式方式的机制。在处理单服务约束关系时,我们利用了集合的 相关理论进行了处理,而对于多服务约束,我们则将之转换为c s p 问题进行求解。最后, 在匹配算法中,我们根据约束类型的优先级别,采用了两级处理的方式分别考虑了各类 约束条件起到的影响作用。不仅满足用户在服务个体和流程整体两方面的要求,而且能 极大的提高匹配算法的性能。 3 对于大颗粒度、有状态的服务而言,我们分析了其功能属性在动态方面的特性, 即服务的调用协议,对服务选择的影响作用,并采用一个改进的d f a 对调用协议进行建 模。在模型中,我们通过一个。先进先出”的消息队列实现了服务侧消息的异步传输, 极大的提高了服务选择策略的查全率。从分析完全执行路径的相关特性入手,我们给出 了判断服务在兼容性和替代性关系方面的具体算法,解决了服务的两种不同类型的用户, 即直接用户和流程中的其他服务对服务协议方面的约束要求。并根据已存在着大量协议 标准的现实情况,以b p e l 为例,描述了将协议从现有标准文件的形式转换为d f a 的机 制,增强了该方法的实用性。 根据“服务”不同于传统构件的特点,本文提出的服务选择策略着重于目前关注较 - - l 。 嗍格t f l :流中服务选择镱略的研究:摘篓 少的非功能属性和调用协议这两方面内容,站在用户和提供者不同的角度全面分析了其 对服务选择结果的影响,并考虑了由流程形成整体要求的特点,极大的提高了服务选择 策略的准确性。 关键词:网格工作流;服务选择;非功能属性;服务调用协议; i l j i 1 0 , , j r e s e a r c ho nt h ea p p r o a c ho f s e r v i c e 靶l e c f i o ni ng r i dw o r k f l o w y ub o ( c o m p u t e rs o f t w a r e & t h e o r y d i r e c t e db yz h o n g x i c h a n g a b s t r a c t w i mt h ed e v e l o p m e n to ft h eg r i da n dr e l a t e dt e c h n o l o g y , m o r ea n dm o r ep e r s o n sa n d e n t e r p r i s e ss t a r tt oi m p l e m e n tt h e i rb u s i n e s sp r o c e s sb yu s i n gs o m er e s o u r c e s ,w h i c hb e l o n gt o o t h e ro r g a n i z a t i o n s o w n i n gt oi t sc o m p l e x n e s s ,t h et r a d i t i o n a la p p r o a c ht h a tu s e rs t i l ln e e dt o e s s e n t i a l l yc o m p o s ed e t a i l e dw o r k f l o wd e s c r i p t i o i l sb yh a n dc a n ts a t i s f yt h er e q u i r e m e n t st h e 删a p p l i c a t i o ni nr e a l i t y s og r i dw o r k f l o w , w h i c hb a s e do nt h et r a d i t i o n a lw o r k f l o w t e c h n o l o g y , i sp u tf o r w a r da m i d t oa u t o m a t i n gt h eb u s i n e s sp r o c e s si ng r i de n v i r m o n e n t c o n s i d e r i n gt h ea d v a n t a g es u c h 嬲l o o s ec o u p l i n g , q u i c kr e s p o n s ea n de r e w h i c hc a nb e a c h i e v e db ya d o v m gs e r v i c e - o r i e n t e dc o m p u t i n gp a r a d i g m , w eu t i l i z et h es e t v i c et or e f e rt o t h ea c t i v i t yi nw o r k f l o wa n dt a k et h es e r v i c es e l e c t i o n p r o b l e m a so l l rm a i nr e s e a r c hc o n t e n t a sf a ra ss e r v i c es e l e c t i o np r o b l e mi sc o n c e r n e d , m o s to ft h ec u r r e n tr e s e a r c h e sp u t e m p h a s i so ni n t e r f a c em a t c h i n g , w h i c hc a n tr e f l e c ti t sc h a r a c t e r i s t i c i nt h i sp a p e r , w ep r o p o s a l ac o n s t r a i n td r i v e ns e l e c t i o na p p r o a c h , w h i c ht a k ea l lk i n d so fe o n s t r a i n tf r o mt h eu s e ra n d p r o v i d e r , f l l n c t i o l la n dn o n - r m c t i o n , f i n 西es e r v i c ea n dw o r k f l o wi n t oa c c o u n t t h em a i n r e s e a r c hw o r kw h c ha s s t l n l et h ec a n d i d a t es e r v i c e sh a v em e tt h er e q u i r e m e n to fi n t e r f a c e i n c l u d e : 1 af o r m a lm o d e lt h a td e s c r i b e st h en o n f u n c t i o np r o p e r t yo f s e r v i c ei sp u tf o r w a r d a sa b r i d g e ,t h i sm o d e lp r o v i d e saf o u n d a t i o nt oc o m p a r et h eu s e r sr e q u i r e m e n tt on f pa n ds e r v i c e a t t r i b u t e i nt h i sm o d e l ,n o to n l yt h ev a l u er a n g eo fap r o p e r t yb u ta l s ot h er e l a t i o n s h i pa m o n g s e v e r a lp r o p e r t i e se a r lb ed e s c r i b e d , w h i c hi m p r o v ei t se x p r e s sa b i l i t yg r e a t l y a sf o rd i f f e r e n t k i n d so f v a l u e 。w ep r o p o s et h ec o r r e s p o n d i n gd e s e r i p t i o nf o r m a tt h a tm a t c h e si t sf e a t u r e 2 b a s e do i lt h en o n - f u n c t i o np r o p e r t ym o d e l ,w ed e f i n et h er e s p e c t i v ef o r m so f e o n s t m i n t f o rt h eu s e ra n dp r o v i d e r i no r d e rt oh a n d l et h e me a s i l y , w ec l a s s i f i e du s e i s c o n s t r a i n t si n t o o b l i g e d , r e f e r e n c e , s i n g l es e r v i c ea n dm u l t i - s e r v i c e so u c t h r o u g ha ne x a m p l eo fw o r k f l o w q u a l i t y , w ea l s os h o wt h ew a yt oc o n v e r tt h ec o n s t r a i n t sf r o ma ni m p l i e df o r mi n t oc l e a ro n e t h ec o n s t r a i n t so f s i n g l es e r v i c ek i n da 聆h a n d l e db ya d o p t i n gs e ct h e o r yw h i l et h em u l t i s e r v i c e c o n s t r a i n t sa l er e d u c e dt oac o n s n a i 眦s a t i s f a c t i o n p r o b l e m i nm a l c h i l l ga l g o r i t h m , w ed e v i s eat w o - l e v e la p p r o a c ht h a tc o n s i d e r st h ed i f f e r e n tp r i o r i t y o fa l lk i n d so fc o n s t r a i n t s b yt h i sw a y , w ec a ns a t i s f yt h er e q u i r e m e n t so fb o t ht h es i n g l e 鸵, r v i c ea n dt h ew h o l ew o r k f l o w , w h i c hw o n tb a d l yr e d u c et h ep e r f o r m a n c eo ft h ea l g o r i t h m 州格t f f 流中暇务选择策略的研究: a b s t r a c t e i t h e r 3 a st os o m el a r g eg r a n u l a r i t ya n ds t a t e - m a i n t a i n i n gs e r v i c e s , t h e i rd y n a m i cf e a t u r eo f f u n c t i o nk n o w n 勰p r o t o c a ls h o u l da l s op l a ya ni m p o r t a n tr o l e i ns e r v i c ed i s c o v e r y t om o d e l t h ep r o t o c a l ,w ea d o p tar e v i s e dd e t e r m i n i s t i cf i n i t es t a t ea u t o m a t i o np r o v i d e dw i t haf i r s ti na n d f i r s to u tm e s s a g eq u e u e t h r o u g ht h eq u e u e ,w er e a l i z et h ea s y n c h r o n o u sc o m m u c a t i o nb f t w e e n 。 t h es e r v i c e si nt h em o d e l , w h i c hi m p r o v e dt h er e c a l lf a c t o ro ft h es e r v i c es e l e c t i o na p p r o a c h b a s e do nt h ea n a l y s i sr e s u l to f t h ec o m p l e t ee x e c u t ep a t hi nt h ed f a , w ep r o v i d et h ec o n c r e t e a l g o r i t h m0 1 1h o w t ot e s tt h ec o m p a t i b i l i t ya n ds u b s t i t u t i o nr e l a t i o n s h i pb e t w e e ns e r v i c e ,w h i c h s o l v e dt h er e q u i r e m e n t sb o t i lf r o mc l i e n t sa n do t h e rs e r v i c ei nt h ew o r k f l o w c o n s i d e r i n gt h e f a c tt h a tt h e r ea l em a n yb u s i n e s ss t a n d a r d sa b o u ts e r v i c ep r o t o c o l sn o w , w ed e s c r i b et h e a p p r o a c hh o w t ot r a n s f o r mt h ep r o t o c a lf r o mt h es t a n d a r df o r mi n t od f ab yt h ee x a m p l eo f b p e l ,w h i c hw i l le n h a n c et h ep r a c t i c a l i t yo f o u ra p p r o a c hg r e a t l y f r o mt h ev i e wo ft h ed i f f e r e n c eb e t w e e ns e r v i c ea n dt r a d i t i o n a lc o m p o n e n t , t h ea p p r o a c h o fs e r v i c es e l e c t i o na d v a n c e di n t h i sp a p e rp u te m p h a s i so nt h en o n - f u n c t i o np r o p e r t ya n d s e r v i c ep r o t o c o l s ,w h i c ha r eo f t e ni g n o r e di nc u r r e n tr e s e a r c h e s k e y w o r d s :鲥dw o r k i l o w , s e r v i c es e l e c t i o n , n o n - f u n c t i o np r o p e r t y , s e r v i c ep r o t o c o l l,_一 o 第一章绪论 第一章绪论 随着网络及相关技术的深入发展,个人、企业和组织相互之间的交流变得更加方便 和频繁,与之相应的,人们的f 1 常生活和工作方式也发生了巨大的变化。电子商务、电 子政务等借助w e b 技术的新型办公模式已逐渐走进人们的r 常生活当中,商务流程或 普通的办公流程也不再仅仅局限于单个组织内部,社会分工形成的专业化使得更多的机 构将借助于市场或其他组织提供的服务来构建自己的办公或业务流程。从实际应用效果 的角度来看,这种跨组织的业务流程在一方面能够通过借助他人提供的服务来弥补自身 功能上的不足,另一方面也可以通过采用更廉价和专业的服务来达到提高经济效益的目 的。 目前,w e b 已从一个单纯的数据载体发展成为一个规模庞大的集各种数据、信息、 应用软件等为一体的资源库。无数多的个人、企业将自己提供的各种各样的服务发都到 互联网上供他人使用,同时,也有许多业务流程借助互联网上的资源得以完成。在这种 背景下,本文就如何在网络环境下为业务流程绑定合适的资源服务问题展开研究。 作为整个论文的研究基础,本章首先介绍了网格工作流的背景、面临的主要问题和 发展趋势,接着我们对面向服务计算领域中的s o a 模型、“服务”的特点、与传统构件 的区别等内容进行了分析。在这个基础上,指出了本文选题的意义,最后具体说明了本 文所作的主要工作、贡献以及后续章节的组织。 1 1 研究背景 网格( g r i d ) ,最早起源于电力网,人们希望能像通过一个插座使用电力那样方便的 来使用计算资源。按照i a n f o s t e r 给出的定义 f o s t e r 0 1 】,网格的目的是实现大范围内对 等资源的共享,这种共享不仅仅局限于简单文件的交换,更强调对计算机、软件、数据 以及其他资源的直接访问。 网格这一思想的提出虽然已有时只,但是目前很多具体概念尚未达成统一的认识, 具体技术和相关开发工具也只是在最近几年才得到迅速的发展。至于具体实际应用方 面,在自然科学研究领域中已经丌始得到重视,特别是大气模拟、生物工程等对数据量 和计算量要求较高的领域中,网格的应用刀= 展得相对比较深入。但在商业领域中,网格 的应用只是还处于刚刚起步的阶段。 。 目前,在大多数网格应用项目中,人们对资源的使用大多还停留在手工操作阶段。 而对于一个大型、复杂的网格应用,不仅会涉及到多个并行、循环和条件分支等复杂逻 辑控制关系,而且通常还伴随着大量数据的处理、传输、转移等。这种情况下,如果继 续采用手工的处理方法,不但效率极其低下,而且难以控制,很容易就导致某些应月j 最 中同科学院博i :学位论史嘲格t 作流中瑕务选掸簧略的研究 终无法完成。因此,对网格应用中的任务执行自动化过程进行研究就很有必要。 工作流技术( w o r k f l o w ) 起源于2 0 世纪7 0 年代的生产组织和办公自动化领域,发 展到现在已经有3 0 多年的历史了。按照w f m c 的定义,工作流足全部或者部分由计算 机支持或自动处理的业务过程 w f m c 9 5 】。它通过将整个工作分解成多个单元任务,并 按照一定的规则和过程来执行和监控这些任务,来达到提高工作效率、降低生产成本、 提高企业生产经营管理水平和企业竞争力的目标。目前,随着软件支撑平台技术的不断 发展和实际应用需求的增长,工作流技术的应用已不仅仅局限于企业的生产经营过程, 在系统集成、服务合成、企业问流程协作等多个领域都得到不同程度上的应用。 在一定意义上,工作流技术也可以看成是一种大颗粒度的编程模式,与普通的编程 技术相同,工作流也是按照一定的逻辑关系依次调用不同的抽象资源来反映某个业务过 程,且都需要系统提供相应的运行平台、丌发平台和建模工具等。不过,除了编程的颗 粒度以外。工作流也有着自身的一些特点,如工作流程运行时白j 较长、流程执行可能有 人工参与以及活动之间的松耦合等等。 考虑到工作流技术的目的、工作方式以及一般网格应用都具有运行周期长、由大颗 粒度运行实体组成等特点,能否将现有的工作流技术应用到网格环境中作为对网格应用 的一种编程模式来达到自动化网格中任务执行的目的,这一思路己引起许多研究人员的 注意并进行了大量的研究工作 d e e l 0 4 【c a 0 0 3 1 【h w a n 9 0 3 】 网格工作流( g r i dw o r k f l o w ) ,对于这一概念目前并没有形成一个明确的并广泛接 受的定义。有人认为它只是工作流技术在网格这一领域新的应用,也有人理解为它是网 格应用的一种编程模式。本文综合上述的一些看法,结合自己的理解,给出一个网格工 作流的定义。网格工作流是指在网格应用中,采用了工作流技术来达到自动执行目的的 业务过程。在这个定义中,主要强调的是采用工作流技术来达到网格应用自动执行的目 的 从生命周期的角度来看。工作流技术通常包括对流程的建模、流程实例生成、流程 执行过程及其监测等几个方面的内容。目i ; ,在实际应用的一些传统的工作流管理系统 中,虽然对于流程模型理论、建模方法、自适应处理等方面存在着不同的意见和看法, 但基本上都有相对较为成熟的一些方法和实用工具。而对于网格工作流,由于运行环境 的变化,这些方法和工具并不能直接用来反映网格应用。 与传统运行环境相比,网格环境给流程运行带束的最大变化是其跨组织的特性。在 传统工作流的运行环境中,一个流程的执行过程中涉及到的资源往往是属于同一组织 的,而在网格环境中,运行环境是由肓着不同管理策略和很强自治性的一哆实际组织按 照一定规则而动态形成的虚拟组织,这一特性使得传统的工作流技术在网格中的应用面 临着如下的挑战: ( 1 ) 资源的多样性:在某一个组织内,可供用户使用的资源相对有限。针对工作流程 中某项活动的实现部件,流程的制订者可能会面临几种到几十种选择,了解这些部件的 差异性也相对容易,因此用户通过一种人工可控制的方式来选择实现部件通常是可以接 2 , - 籀一帝维论 受的工作方式,并不需要特别复杂的服务自动选择机制。而在网格环境下,各种资源极 大丰富,对于某项活动的实现部件,可能会存在着成百上千种服务,它们在功能属性上 差异很小甚至没有差异。而在一些非功能属性,如使用成本、可靠性等服务质量方面相 差甚远,如果网格工作流不提供一种自动选择机制。丽继续让用户手工选择将成为一种 难以接受的工作方式。 ( 2 ) 资源的动态性网格中的资源分属于不同的管理组织,这些资源通常具有很强的 自治性。它们可以根据自身的状况选择加入或者退出虚拟组织,或者是某些性能发生较 大的改变,或者由于网络基础设施故障而不可用,导致整个网格显示出很强的动态性。 相对于工作流程制定时,在工作流程执行时,甚至在流程执行过程当中,流程运行环境 和流程中活动绑定资源的状况部很有可能发生很大的变化。而在某单个组织戌,资源状 况的变化相对较慢,而且用户对这种变化往往也有着一定的预见性,因此,采用静态的 方式为活动绑定资源以及一些异常处理措施都能很好的满足应用的需求。而在网格工作 流中,服务的动态绑定、流程的自适应性问题以及异常处理措施等则应该引起更多的关 注。 ( 3 ) 资源的异构性在同一组织中,对资源的描述、数据格式、功能接口的定义以及 描述词汇采用的语义都会有着显式或者隐含的定义和规范。而在网格环境中,工作流程 的制订者与所调用的资源往往分属不同的组织,对同一资源可能有着不同的命名规则或 者相同的命名却实际对应着截然不同的资源,这将给网格工作流程模型的定义、执行以 及监测分析都带柬极大的困难。虽然目前网格平台自身提供了一些办法来解决这个问 题,不过大量的工作还只限于语法阶段,对语义的支持还远远不够,网格工作流必须找 到合适的方法来解决这个问题。 ( 4 ) 资源的分布性在传统的工作流管理系统中,虽然也存在着一些分布式的原型系 统,但大多数还是采用集中控制的方式来调用和协调各种活动。而在网格环境中,它的 本质是分布式的,各种计算资源、存储资源、数据资源等分属不同的组织。分布在不同 的地理位置,特别是科学计算中,往往还会涉及到大量的数据传输。如果继续采用集中 控制的方式将加剧工作流引擎性能的瓶颈问题,但是若采取分布式的方式,势必又会给 工作流系统的部署以及工作流的执行带来许多新的问题。 对于研究范围,与传统工作流类似,活动( a c t i v i t y ) 被网格工作流视为可调度执行 最小的工作单元,也就是说网格工作流是建立在网格这一支撑平台基础之上的一种技 术它并不关心流程中某个活动是如何通过网格资源来具体实现的,它更关注在网格环 境中如何把这些单元组织协调起来实现网格应用的自动执行。迸一步说,网格工作流假 设网格作为基础设施和一个大的资源库,已经提供了众多可以完成实际应用的功能单 元,网格工作流所作的工作就是以一种大颗粒度编程的方式来将这些功能单元组织起来 反映某个应用,在这个过程当中,网格工作流要解决上述提到的相关问题。 目前,关于网格工作流的研究工作主要包括对流程建模、资源选择、流程的优化与 中固科学院博i 学位论文m 格t 作濉中般务选掸锾! 略的研究 校验、服务质量、流程运行的监测与控制、事务属性支持与异常处理等方面的内容。其 中本文研究的服务选择策略就是解决其中的资源选择问题,即为工作流中的活动选择 具体的实现资源,之所以称为服务选择是因为在目前的嘲格研究领域,将面向服务的思 想引入到网格中来己逐渐成为人们的一种共识。一方面,在技术上,采用服务对网格中 提供共享的各种资源进行封装能带来系统松祸合、满足动态需求等好处,从而促进网格 的广泛应用。在另一个方面,采用s o a ( 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 ) 思想的w e b 服 务无论是在实现技术、开发工具还是在标准化进程方面都已经做出了大量的工作,在业 界得到绝大多数厂商的一致支持,目前的商业领域中也有着广泛的应用。出于这两方面 的考虑,学术界以及工业界都在大力促进网格服务和w e b 服务两者的融合,随着o g s a ( o p e ng r i ds e r v i c e a r c h i t e c t u r e ) 、w s r f ( w e bs e r v i c er e s o u r c ef r a m e w o r k ) 等标准的 相继推出,更是预示着两者的融合。 为了更好理解在网格工作流中服务选择面临的问题,下面就对面向服务计算的特 点、涉及到内容和适用场合等方面做较为详细的介绍。 1 2 面向服务的计算 目前,关于面向服务的计算是否是一种革命性的技术,与已有的面向对象、构件等 技术之间是否存在着实质性的差别等类似的问题,无论是在学术界还是在企业界都存在 着很大的争议。简单的来说,所谓面向服务的计算,指的是在网络环境中采用“服务” 作为最基本的功能模块来构建应用系统。而对于什么是服务,业界则存在着许多不同的 声音: 1 ) w 3 c 的定义 w 3 c 0 3 从服务提供者和服务使用者角度来看,服务是由不同服务提供者面向不同服务使用 者提供的一组遵循标准定义的操作。 ( 2 ) 第一届面向服务的计算国际会议上的定义 o r l o w 0 3 : 服务是一类自治的、平台独立的计算元素,采用基于x m l 的方式可以对其进行描述、 发布、发现及组合,从而能够支持大规模分布式应用的构造。 ( 3 ) s t e v eg r a h a m 等人的定义 g r a h 0 2 : 服务是独立于特定平台及实现的软件组件,它能够被一个服务描述语言描述,在一 个服务注册库发布,通过标准的机制发现,基于网络调用以及与其它服务组合。 虽然这些定义在表述、侧重点等方面存在着一定的差异但是我们还是可以看出“服 务”具有“使用而不拥有”、“自包含、自描述”和遵循开放标准的特点也正是服务具 备的这三个特点使得采用面向服务架构的系统具备“松散耦合“的特性,提高了系统的 灵活性,实现业务需求的即时响应。同时,降低了应用构造的代价,减少使用和维护的 4 第一帝缝论 复杂度,从而降低了用户的成本,具体包括歼发成本、部署成本、和动态适应的成本等。 这里所谓松散耦合,是相对于紧祸合而占的,即尽量减少功能模块相互之间的各种依赖 关系,达到某一模块的变动不会或很小程度的影响到整个系统表现的目的。 对于服务的“使用而不拥有”特点,正如在 h a 0 0 3 忡所说,使用服务的原因在于, 人们不可能在所有领域都是专家,使用网络上已有的、由专家提供的服务比亲自去完成 该任务不仅更加经济,而且能迅速应对业务需求的变化而更具效率。同时,由服务提供 商而不是系统管理者来维护服务无疑也降低了维护的复杂度。而“自包含、自描述”正 是达到“使用者”与“拥有者“相分离的必要条件,“自包含”的特性使得服务能做为 一个独立部署的单元来满足用户的功能需求,服务运行的结果不依赖于其它服务。“自 描述”使得用户能够了解到服务实现的功能、接口以及调用方式等,实现了服务用户与 提供者之间的交互。采用开放的标准,则使的服务的组合不依赖于某一特定的平台,方 便了异构系统之间的集成。 面向服务的体系结构中的核心概念主要体现在服务提供者( 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 e r ) 和服务代理( s e r v i c eb r o k e r ) 三个角色的作用和相应的 操作上: 服务使用者 服务代理 b i n d 服务提供商 图1 1s o a 模型 ( 1 ) 服务提供者:作为服务的拥有者,服务提供者负责采用开放标准的方式对其所提供 服务的能力和特性进行描述,并将服务的描述信息发布到由服务代理维护的服务注 册中心。同时,服务提供者自主维护其所提供的服务,并控制服务使用者对其所提 供服务的访问。 ( 2 ) 服务使用者:服务使用者通过服务注册中心查找满足特定标准的可用服务。一旦找 到合适的服务,服务使用者可以获得服务的相关信息,相关信息通常包括:服务功 能的描述、服务提供商信息以及服务调用方式等,基于该信息,服务使用者可以与 相应的服务提供者建立绑定关系并按给定的方式调用其所提供服务。 5 ! 堕壁兰堕堡! :兰丝堡苎二二塑堡二堑塑! 壁墨垦堡鐾堕堕竺窒 ( 3 ) 服务代理:服务代理是服务提供者和服务使用者问的中介,它负责管理一个服务注 册中心。服务提供者可以将其所提供的服务的描述信息发和到服务注册中心;通过 服务注册中心,服务使用者可以进行服务的查找,以找到合适的服务。 对上述三个角色,面向服务的体系结构主要提供了发布( p u b l i s h ) 、查找( f i n d ) 和绑定( b i n d ) 三个基本操作。发布操作完成将服务提供肯提供的服务描述信息发椎到 服务代理管理的服务注册中心:查找操作面向服务使用者,帮助服务使用告找到合适的 服务;绑定操作在服务使用者和服务提供营之日j 建立绑定关系,以完成服务的调用。简 单的讲这三个基本操作就确定了面向服务的计算中的编程模型。 在目前的众多研究当中。为了达到增强整个系统的灵活性、自适应性等目的,有不 少的工作在上述模型的基础上进行了扩展,如增加客户代理角色,由客户代理自动对可 使用服务进行查找、筛选,并将最终待绑定的服务主动返回给用户。一般在扩展模型中, 对相应的基本操作也进行了必要的扩展。 面向服务的体系结构体现了面向服务的计算环境下一种新的应用构造架构模式,它 从很大程度上改变了传统应用系统那种“自底而上”的构建方式。简单来说,在面向服 务的计算环境中,所有的应用系统都是由。服务”作为最基本的功能模块构建而成,而 。服务”则可分布在网络上不同的位置,并不一定为该应用系统所拥有。 在图1 1 中,我们描述了s o a 最基本角色以及相互之间的交互模式。而在整个面 向服务的计算环境中,按照各自的角色,可以将所包含的内容划分为三个层次,如图 1 2 所示 o r l o w 0 3 。在最底层为原子服务,是构建面向服务应用最基本的结构单元,也 是构建面向服务应用时编码的操作对象,主要涉及的内容包括服务的描述、发现和调用 等,即图1 1 中描述的内容。 图1 2 扩展s o a 的层次图 6 第一帝孝 论 在基本服务层之上的为合成服务层,在这一层中,所有的服务都是通过多个底层的 基本服务合成得到的。为了保证合成后的服务能够像基本服务一样被用户使用,合成者 通常需要完成如下功能: 协调:能够按照预先设冒的逻辑关系协调各个基本服务的执行,包括执行时间 同步、数据传输等问题。 监测:监测基本服务的执行情况,接受相应事件信息或者输出消息,并以合成 服务的角色对外发行,或者是从用户处接受消息,发送到内部对应的基本服务。 保证一致性:比较基本服务与合成服务的输入、输出参数,在存在格式或者内 容差异时,进行必要的数据转换和处理,保证数据的一致。 计算服务质量:根据每个基本服务的服务质量,计算出合成服务的服务质量, 包括价格、执行时间、可靠性、安全性、扩展性等。 合成后得到的服务象其它服务一样可以用于进一步的合成,在这种情况下,服务聚 合者扮演服务提供商的角色并对外发布该合成服务的相关信息。 服务管理层建立在服务合成层之上,在该层中,提供对服务的各种管理操作和对服 务合成的支持功能,包括统计合成服务的运行性能指标来评价合成的效率、当应用执行 到分支点或者某个服务完成时给出必要的提示等。定义服务管理操作的目的是用来支持 一些非常重要的应用程序,在这些应用中,要求应用主体来管理服务运行平台、服务的 部署和应用。这种负责对服务进彳亍管理的主体通常被称为操作员( o p e r a t o r ) ,根据实际 的需求,操作员角色可由服务用户或者服务合成者来担当。 提供服务管理的另一个目的是为建立开放的服务市场,在服务市场,买方( 服务用 户) 与卖方( 服务提供商) 进行电子商务交易,事实上,在一些行业里,如半导体、旅 游业,汽车产业、金融业已经存在着这样的服务市场。为了达到对服务市场进行管理的 目的,提供的功能包括对服务的评估、服务认证、质量保证、服务协商支持、事务支持 以及服务等级等,服务市场由某个组织建立并负责维护,服务用户与提供商通过服务市 场进行交易。 从软件技术的发展来看,服务是从。结构化思想。一。面向对象技术”一。构件技 术和分布式技术”逐步发展而来的,在这个发展过程中,技术是逐步朝着松散耦合、增 加复用程度的方向发展。从宏观上来说,在思想上,与前三者相比,服务为了达到更大 程度的松散耦合,服务采用了使用者与拥有者相分离的办法这使得使用者不必关注服 务的实现、部署和生成等问题,而将注意力集中到如何从网络上可用的服务集合查找到 满足业务的服务和如何利用网络上已有的服务来满足业务需求等问题上。同时,从服务 提供者的角度来说,为了使服务的描述信息方便用户理解,服务描述也不再仅仅只包含 一些技术信息如接口规范等,还包括方便普通用户理解的其他描述信息。另外,从软件 实体的规模来看,服务通常有着更大的颗粒度,这是因为软件复用程度的大小与软件实 体的颗粒度有着紧密的联系软件的颗粒度小,则实现功能一般有限且比较专一,特定 7 中周科学院博 。学位论文州格t 作漉中睢务选掸策略的研究 性非常强,如结构化编程中“模块”,面向对象中的“对象”通常与具体的应用紧密相 关,只能在该应用系统内部被复用,被其他应用系统复用的可能性i e 常小。而服务是针 对广大用户的,其一个主要目的就是共享,因此通常会通过内聚一些小的功能模块形成 , 一个大颗粒度的软件实体束提高其复用程度程度。 综合上面的分析,我们可以看成,与传统构件等技术相比,服务是一个更面向业务 用户的、大颗粒度的软件实体。它能够将用户从如何实现某些具体功能的技术细节中解 脱出来,而将精力集中到如何应对整个业务需求的变化当中,在一定程度上,填平了计 算机软件开发与现实生活中实际问题之间的隔阂。 虽然面向服务的应用和传统的分布式系统相比,具有扩展性好、适应性强、可以利 用更大范围内更有效的共享资源等特点。但是由于采取了x m l 的编码方式,增加了通 信流量和消息处理的开销,对系统硬件平台、处理能力、性能提出了更高的要求。因此, 面向服务的架构并不是适合所有的分布式应用,在构建具体的应用系统时,究竟是采取 传统的对象、构件技术,还是采取面向服务构架应综合考虑各个方面的因素。通常s o a 可以在基于i n t e r a c t 的应用集成、动态电子商务、虚拟企业、公众信息服务等应用领域 充分发挥其作用,这些应用领域往往具有以下一些特点: ( 1 ) 范围广:应用往往是跨地域、跨越组织边界的,特别是在多个组织之自j 进行交互: ( 2 ) 协同性要求高:一个应用需求需要由众多参与者的共同协作来完成存在异构性: 各个参与者所提供的应用在平台、架构以及实现等方面都可能是异构的: ( 3 ) 应用的动态性强:应用中涉及的参与者是时常变化,参与者动态的进入和退出应 用系统; ( 4 ) 即时性要求高及生命期短:应用要求快速地实现以适应急迫的需求,同时应用的 使用次数往往有限,甚至可能使用一次就结束: 1 3 选题的意义 通过上述对风格工作流和面向服务计算的分析和介绍,我们可以看出,将s o a 思 想引入到网格工作流中,即利用网格中的“服务”来实现流程中的活动是合适的,它有 利于简化网格工作流实施的复杂程度,也是目前工业界在极力推动的方向。 在这种背景下,我们将网格工作流中的服务选择策略作为本文研究的内容主要是基 于如下几点考虑: 首先,服务选择策略对网格工作流的执行起着至关重要的作用。从生命周期的角 度来看,网格工作流从抽象流程到具体流程必然经历的一个步骤就足服务的绑定过程。 所谓服务绑定,指的根据用户需求的描述,为抽象的服务描述指定一个具体的实现主体。 8 第一章 纬论 而在网格环境中,各种资源极大的丰富,无论是在功能上,还是在性能上,部千差万别, 显然会存在着一个服务选择的问题。 一方面,从性能的角度来说,作为最基本的执行单元,多个服务按照一定的逻辑控 制关系构成了业务流程,因此,业务流程实施的成功与否、性能的好坏等问题无疑与个 体服务的特性密切相关。而服务选择的策略直接影响到服务绑定的最终结果,虽然流程 运行的监测、控制调整和异常处理等方式也能在一定程度上影响流程运行的效果,但是 显然服务绑定的具体对象起着主导作用。 在另一方面,从制约关系的角度来说,作为最核心的一个问题,服务选择策略极大 的影响着网格工作流其他方面的实现方式,如流程的自适应性、异常处理、流程优化等 问题的解决方案。不同的服务选择策略使得服务绑定的对象集合在准确率,查全率以及 灵活性等方面出现很大的不同,同时也改变了后续其他工作的处理对象,因此,难免会 导致其他对应解决方式的变化。例如对于流程的自适应性,如果在服务选择时,采用静 态的方式绑定某个实现对象,则解决自适应性问题系统需要做大量的工作;若服务在选 择时,采用灵活的方式,如考虑到某些动态的限制条件,使得服务绑定对象为某个对象 集合,然后根据运行的具体状况来选择具体的服务,那么自适应性问题则需要另一种解 决方式。 其次,传统工作流中为活动绑定资源的方式不适合网格工作流。在传统工作流中, 各个活动的实施人员和流程的制定人员通常处于同一组织,相互之间的联系较为密切, 流程制定人员对相关的活动实现方式有着大致的了解。而且相关的资源的数量较少,通 常不存在着服务选择的问题,即使存在,通过手工的方式也能很好为之绑定合适的资源。 而对于网格工作流来说,各种资源分布在不同的组织,无论是在数量的规模上,还是在 资源特性的差异上,都很难要求流程制定人员去逐一深入的了解。因此,通过人工选择 来服务绑定具体的资源这种方式已经不能适应新的应用环境的要求。在这种情况下,我 们必须寻找新的服务选择方式束达到为活动绑定具体资源的目的。 再者,从目前的研究状况来看,关于服务选择的研究成果并不成熟。如前所述,面 向服务的计算模式是从传统的构件等技术发展而来的,这样导致现阶段一些相关的理 论、实现技术和相应的工具大多都沿袭了过去的一些成果,而这些成果并没有很好的反 应出s o a 的特点。具体到服务选择当中,目前相当多的研究仅从接口的角度来考虑服 务选择问题,事实上,由于采用“使用者”和“提供者”相分离的思想,服务不仅仅涉 及到功能接口问题,还包括服务质量、业务规则等许多原本在传统软件开发中不受重视 的内容。而无论是对于用户,还是对于提供

温馨提示

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

评论

0/150

提交评论