(计算机软件与理论专业论文)面向数字化学习环境构建的web服务组合方法研究.pdf_第1页
(计算机软件与理论专业论文)面向数字化学习环境构建的web服务组合方法研究.pdf_第2页
(计算机软件与理论专业论文)面向数字化学习环境构建的web服务组合方法研究.pdf_第3页
(计算机软件与理论专业论文)面向数字化学习环境构建的web服务组合方法研究.pdf_第4页
(计算机软件与理论专业论文)面向数字化学习环境构建的web服务组合方法研究.pdf_第5页
已阅读5页,还剩46页未读 继续免费阅读

(计算机软件与理论专业论文)面向数字化学习环境构建的web服务组合方法研究.pdf.pdf 免费下载

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

文档简介

摘要 随着数字化教育的普及,互联网上存在众多的数据化学习支撑软件,然而由于这些 软件使用不同的开发平台、开发语言和数据库,增加了集成的难度。w e b h 艮务的出现使 得应用集成跨越了平台等限制,为解决异构数字化学习支撑软件集成提供了一种可行的 方案,通过将现有服务按照一定的逻辑顺序组合起来,可以快速构建新的数字化学习环 境。但是目前,现有的服务组合方案要么缺乏服务语义信息,使计算机无法很好的理解 服务,要么,单纯从服务的功能的角度出发去组合服务,很少考虑服务的非功能属性, 尚没有一种有效的服务组合方法,因此,本文提出了一种基于本体的面向数字化学习支 撑软件构建的服务组合模型,来自动的匹配、发现、组合和调用w e b 服务,更好地实现 数字化学习支撑软件的集成。 本文结合语义网和w e b h 艮务技术,提出了一种基于本体的面向数字化学习支撑环境 构建的服务组合方法,该方法能有效的解决数字化学习支撑软件集成中的异构问题,根 据服务消费者的业务需求,对服务进行动态的组合。在该方法中,主要利用数字化学习 领域的本体库中的本体对服务进行扩展的语义描述,并利用本体的推理机制,挖掘服务 之间的关联关系;扩展传统的服务语义描述语言o w l - s ,为其增加了服务质量本体来描 述服务的非功能属性,通过均衡考虑服务的功能性和非功能性需求筛选服务,得到最优 服务组合序列。在组合的过程中,本体库的建立是个复杂的过程,针对服务组合的领域 应用需要,我们引入基于数字化学习标准元数据的面向数字化学习环境构建的本体库和 服务库的建设方法,同时,还为本体库提供了自学习的能力,使其能够得到不断完善。 关键字:w e b 服务;服务组合;数字化学习支撑软件集成;数字化学习领域本体; 服务质量本体 a b s t r a c t w i t ht h ep o p u l a r i t yo fd i g i t a le d u c a t i o n ,t h e r ei sal a r g en u m b e ro fe l e a r n i n g s u p p o r t i n gs o f t w a r ei nt h ei n t e r n e t h o w e v e rb e c a u s et h es o f t w a r e u s e sd i f f e r e n ts o f t w a r e d e v e l o p m e n tp l a t f o r m s ,d e v e l o p m e n tl a n g u a g e sa n dd a t a b a s e s ,t h ed i f f i c u l t yo fi n t e g r a t i o n b e t w e e nt h e mi si n c r e a s e dg r e a t l y t h ee m e r g e n c eo fw e bs e r v i c e sm a k e sa p p l i c a t i o n sc a l l i n t e g r a t ew i t he a c ho t h e ra c r o s sd i f f e r e n tp l a t f o r m sa n dp r o v i d e saf e a s i b l es o l u t i o nf o r i n t e g r a t i o no fh e t e r o g e n e o u se l e a r n i n gs u p p o r t i n gs o f t w a r e w ec a l lb u i l dn e we - l e a r n i n g s u p p o r t i n ge n v i r o n m e n tq u i c k l yb yc o m p o s i n g t h ee x i s t i n gs e r v i c e si nac e r t a i nl o g i c a lo r d e r h o w e v e r , a tp r e s e n tt h ee x i s t i n ga p p r o a c h e so fs e r v i c ec o m p o s i t i o na r el a c ko ft h es e r v i c e s e m a n t i ci n f o r m a t i o n s ot h ec o m p u t e rc a nn o tu n d e r s t a n dt h es e r v i c e sw e l l o nt h eo t h e r h a n d t h e yc o m p o s et h es e r v i c e sf r o mt h ev i e wo f t h ef u n c t i o n a li n f o r m a t i o no fs e r v i c e s ,a n d i g n o r et h e n o n f u n c t i o n a li n f o r m a t i o no fs e r v i c e s t h e r e f o r e ,t h e r ea r en oe f f e c t i v e a p p r o a c h e so fs e r v i c ec o m p o s i t i o n t h i sp a p e rp r o p o s e s a no n t o l o g y - b a s e de l e a r n i n g o r i e n t e dw e bs e r v i c ec o m p o s i t i o nm o d e l i tc a l lr e a l i z ea no n t o l o g y - b a s e ds e r v i c e c o m p o s i t i o na p p r o a c hf o ri n t e g r a t i n ge - l e a r n i n gs o f t w a r e i tc a na u t o m a t i c a l l ym a t c h , d i s c o v e r y , c o m p o s ea n di n v o k ew e bs e r v i c e s ,a n di n t e g r a t ee l e a r n i n gs u p p o r t i n gs o f t w a r e e f f e c t i v e l y i nt h i sp a p e r , a c c o r d i n gt os e m a n t i cw e ba n dw e bs e r v i c e st e c h n o l o g y , w ep r o p o s ea n o n t o l o g y b a s e d s e r v i c ec o m p o s i t i o na p p r o a c hf o ri n t e g r a t i n ge - l e a r n i n gs o f t w a r e t h i s a p p r o a c hc a nc o m p o s et h eo p t i m a l s e r v i c ew h i c hm e e t st h ec o n s u m e r sr e q u i r e m e n t i t d e s c r i b e st h es e m a n t i ci n f o r m a t i o no fs e r v i c e sa c c o r d i n gt ot h ee l e a r n i n gd o m a i no n t o l o g y d a t a b a s e t h e ni tu s e st h er e a s o n i n gm e c h a n i s m st om i n i n gt h er e l a t i o n s h i pb e t w e e ns e r v i c e s i no r d e rt od e s c r i b et h en o n - f u n c t i o n a li n f o r m a t i o no fs e r v i c e s ,w ee x p a n dt h et r a d i t i o n a l s e r v i c ed e s c r i p t i o nl a n g u a g eo w l - sw i t hq o s 勰n o n f u n c t i o n a ld e s c r i p t i o n s ot h r o u g h c o n s i d e r i n gt h ef u n c t i o n a la n dn o n f u n c t i o n a lr e q u i r e m e n t so fs e r v i c e st o g e t h e r , w e c a ng e t t h em o s to p t i m a ls e q u e n c eo fs e r v i c e s i nt h ep r o c e s so fc o m p o s i t i o n , i ti sac o m p l e xp r o c e s s o fb u i l d i n go n t o l o g yd a t a b a s e a c c o r d i n gt ot h er e q u i r e m e n to fs e r v i c ec o m p o s i t i o n , w e p r o p o s et h ea p p r o a c ho fe l e a r n i n gs t a n d a r d sb a s e de l e a r n i n gd o m a i no n t o l o g yb u i l d i n g m e t h o d a tt h es a m et i m e ,w ea l s op r o v i d et h es e l f - l e a r n i n ga b i l i t yt oo n t o l o g yl i b r a r ys ot h a t i tc a l lb ei m p r o v e dc o n t i n u o u s l y k e yw o r d s :w e bs e r v i c e s ;s e r v i c ec o m p o s i t i o n ;e l e a r n i n gs u p p o r ts o f t w a r ei n t e g r a t i o n ; e l e a r n i n gd o m a i no n t o l o g y ;s e r v i c eq u a l i t yo n t o l o g y n 独创性声明 本人郑重声明:所提交的学位论文是本人在导师指导下独立进行研究工作所取得 的成果。据我所知,除了特别加以标注和致谢的地方外,论文中不包含其他人已经发 表或撰写过的研究成果。对本人的研究做出重要贡献的个人和集体,均己在文中作了 明确的说明。本声明的法律结果由本人承担。 学位论文作者签名:日期:勿竹叶 学位论文使用授权书 本学位论文作者完全了解东北师范大学有关保留、使用学位论文的规定,即:东 北师范大学有权保留并向国家有关部门或机构送交学位论文的复印件和电子版,允许 论文被查阅和借阅。本人授权东北师范大学可以采用影印、缩印或其它复制手段保存、 汇编本学位论文。同意将本学位论文收录到中国优秀博硕士学位论文全文数据库 ( 中国学术期刊( 光盘版) 电子杂志社) 、中国学位论文全文数据库( 中国科学技 术信息研究所) 等数据库中,并以电子出版物形式出版发行和提供信息服务。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名:越 日期:丝咝 学位论文作者毕业后去向: 工作单位: 通讯地址: 指导教师签名:舀堑叠 日 期:一7 , 日- 4 - e 电话: 邮编: 东北师范大学硕士学位论文 第1 章绪论 1 1 研究背景及意义 数字化学习是指学习者在数字化的学习环境中、利用数字化学习资源,以数字化方 式进行学习的过程。它包含三个基本要素:即:数字化学习环境、数字化学习资源和数 字化学习方式。而数字化学习环境是开展数字化学习活动的基础。目前,数字化学习 支撑软件有上百种,主要包括教育资源库、网络教与学支撑软件、教学管理软件等三大 类,通过集成不同的数字化学习支撑软件构建个性化的数字化学习支撑平台是构建数字 化学习环境的最有效方式船1 。然而,由于不同厂商的软件产品采用了不同的基础平台、 开发技术、数据格式,不能有效的实现互操作和集成。例如在构建个性化学习平台时, 往往需要对不同系统的组件进行集成,而这些组件的实现模型( 如o m g 的c o r b a ,s u n 的 e j b ,m i c r o s o f t 的c o m + 等) 使用的是不同的通信协议( i i o p ,r m i ,r p c ) ,难以直接 集成。 w e b 服务口1 将业务逻辑进行封装,对外提供一个统一的交互接口,并采用u d d i 、 w s d l 、s o a p 等基于x m l 的标准和协议分别定义了服务发现、描述和消息传送协议,使 得用户能够以平台独立、语言独立和松散耦合的方式连接不同组件。w e b 技术的出现和 发展使得人们能共享w e b 上的各类资源,同时,w e b 服务的出现为数字化学习软件的集 成提供了有效的途径,在w e b 服务诞生之前已经有多种分布式计算技术,如r m i 、c o r b a 、 d c o m 等。与之相比,使用w e b 服务的解决方案不必依赖于某个特定的实现提供商,对 运行环境的要求也比较宽松,特别适合i n t e r n e t 上分散应用的互联。此外,任何一个 w e b 服务可以通过s o a p 与其他任何w e b 服务交互,无需c o r b a 、d c o m 中采用的转换操 作。同时,任何支持h t t p 和x m l 的设备均可使用w e b 服务。 w e b 服务以其普遍、易于开发等特点得到了i b m 、微软、s u n 等大厂商的广泛支持, 它在数字化学习软件集成领域有广阔的应用前景。在系统开发方面,w e b 服务技术的出 现也带来了一种全新的思路,对于一些实现通用功能的系统模块,完全可以不必自己开 发,而是从现有的w e b 服务中搜索合适的服务,按照相应的业务逻辑将它们组成新的系 统,充分缩短软件开发的周期;同时,通过服务的组合,可以把细粒度的服务组合成更 大粒度的服务,克服由于过多的细粒度服务存在而引起的性能,可伸缩性以及管理等问 题。h 1 目前,有实力的大公司都纷纷将自己的服务作为w e b 服务发布,如搜索公司g o o g l e 已经对外发布了名为g o o g l es e a r c h 的搜索w e b 服务,用户可以通过调用其服务接口, 将搜索功能集成到自己的系统中来:而微软也发布了股票报价w e b 服务,对外实时提供 股票价格变化服务:在移动通信领域,中国移动通过w e b 服务开放其网络服务能力,使 用户能够很容易地将短消息,w a p 集成到自己的系统中来而不需要去了解复杂的电信知 识;瞄1 而且还有一些w e b 服务提供了从产品报价、天气预报、车票预订和酒店预约等各 l 东北师范大学硕士学位论文 个方面的服务。在这种趋势下,我们可以重用已有的服务,将它们按照一定的逻辑顺序 组织起来,构建出满足用户需求的应用系统,实现异构系统之间的互操作是解决异构 数字化学习支撑软件集成的有效途径。 1 2 国内外研究现状 w e b h 艮务是一个崭新的分布式计算模型,是w e b 上数据和信息集成的有效机制,它与 其他成熟技术的有机结合以及集成是解决现实应用问题的重要技术呻3 。w e b h 艮务以其普 遍、易于开发等特点得到了i b m 、微软、s u n 等大公司的广泛支持,并且在数字化学习软 件集成领域有着广阔的应用前景。 目前,国内外也对服务组合做了大量的研究功能,将各个领域的知识都引入到服务 组合中,例如工作流、人工智能规划、图搜索算法和遗传算法等。比较典型的有基于工 作流技术,基于人工智能的,基于语义技术的等等。 h p 实验室的e f l o w 口1 是一个开发和管理组合服务的平台,它将组合服务描述成一个 将基本服务和其他组合服务组合在一起的过程方案,用业务过程来表示组合服务,并由 业务过程引擎来执行;同时,它还提供了在运行时刻动态修改组合方案的能力。但是, 服务的描述不具有语义特征,没有给出如何构造服务组合方案和如何实例化为组合服务 实例。 斯坦福大学的s w o r d 呻1 把基本服务通过一系列的规则进行描述,规则描述给定特定 输入,服务能够产生何种输出,专家系统通过规则推理构造出服务组合方案。但是这种 规则描述不具有语义特征,没有说明如何选择组合服务的实例以及如何控制服务的数据 流动问题。 澳大利亚新南威尔士大学与昆斯兰科技大学联合研制的s e l f s e r v 田1 ,它是一个基于 点到点( p e e r t o p e e r ) 的w e b 服务组合平台。它采用五层体系结构:服务层( s e r v i c e l a y e r ) ,会话层( c o n v e r s a t i o nl a y e r ) ,目录层( d i r e c t o r yl a y e r ) ,通信层 ( c o m m u n i c a t i o nl a y e r ) ,用户层( u s e rl a y e r ) 。服务分为三类:基本服务,组合 服务和服务社区( s e r v i c ec o m m u n i t y ) ,该平台采用一种基于状态图的描述性语言进 行服务组合,并提出服务社区的概念,用来描述组合潜在的大量动态服务的过程。组合 服务通过多个称为协调者的端点组件进行协调。 美国乔治亚大学的l s d i s 实验室承担的m e t e o r - s 服务综合理项目 i o s 结合工作流、 语义网、w e b h 畏务三种技术解决语义w e b 服务的描述、发现、组合和执行问题。它将服务 组合流程分成抽象流程和可执行流程两个不同层次,能够基于语义模板动态地筛选和绑 定服务,达到快速组合服务的目的。但是它的语义w e b 流程中没有对数据流向进行描述, 需要在系统的运行过程中和用户交互来确定服务间的数据流向。 m i n d s w a p sw e bs e r v i c ec o m p o s e r n ”可以根据服务的输入输出的类型和语义指导 用户动态地对服务进行组装完成一个任务,并且执行这个组装的任务。c o m p o s e r 有一 个存贮已有服务的知识库,并且可以根据这些服务的功能查找匹配的服务。在进行匹配 2 东北师范大学硕士学位论文 时,首先匹配提供与待输入的服务的参数完全相同的输出的服务,再匹配输出是待输入 的子类的服务,并利用s e r v i c eg r o u n d i n g 及其生成的w s d l 来自动执行。例如,图11 给 出t c o m p o s e r 如何引导一位想查看n e w y o 矗的天气情况的法国用户组合服务的。 臣墨曩墨墨田墨目餐篓删剖 | s e l e d w o * 口自m f 3 0 ) 日i i 日 匠五童五盈 l m m,bwlsht ,“ 赢i 盎、三i 墨i 、i 玉妄i 圈1 1m i n d s w a p sw e bs e r v i c ec o m p o s e r 国内对_ 丁服务组合的研究与国际基本同时起步,目前从事该领域研究的主要单位包 括北京航空航天大学、国防科大、中科院软件所等单位,其中北京航空航天大学研制的 w e b s a s e ”是完成较早影响较大的一个支持服务组合的w e b 服务运行平台。中科院软件 所的服务组合是基于需求的业务级组合,使用v i n c a 作为组合流程语言使业务用户能 够从业务角度透明地使用服务资源以及自主地组合服务资源其组合方法主要是基于业 务流程模板的太粒度服务组合技术。将抽象的用户需求映射到具体的软件层的组合服 务。” 通过上文的分析我们可以看出这些系统都在不同的程度上推动了服务组台的发 展。但是它们多数在服务组合方案的语义表达上存在着不足,因此造成目前的w e b 服务 缺乏清楚的语义,不支持服务功能信息和非功能信息的语义描述,也无法支持服务自动 发现与组合和异构系统的集成。随着服务数量的增加,不解决机器理解服务的困难,势 必影响服务组台的质量。 1 3 主要研究内容 分析国内各种服务组合方法的实现原理,它们部从不同的角度和关注点去解决w e b 服务组合中的问题,但是都各有利弊。日前,w e b 服务大多用w s d l 描述的,w s d l 只给 3 ,昌 ! 一 旨 东北师范大学硕士学位论文 出了服务能做什么和如何绑定、发现服务的描述,并不能很好地表达w e b 服务的语义信 息,u d d i 也没有给出服务的性能描述,只局限于服务的名称,造成目前的w e b 服务缺 乏清楚的语义,不支持服务功能属性和非功能属性的语义描述,无法支持服务自动发现、 组合和异构系统的集成。考虑到实际应用到数字化学习环境中的需要,本文提出了基于 本体的面向数字化学习环境构建的服务组合模型,利用本体来描述w e b 服务,然后通过 这些带有语义信息的描述来实现服务的自动发现,调用和组装。通过对相关工作的研究, 本文主要做以下工作: ( 1 )提出了基于本体面向数字化学习环境构建的服务组合模型,为w e b 服务组 合提供一个整体的解决方案,并对该模型的各个功能模块进行详细的介绍,给出了服务 组合的实现流程。 ( 2 )研究了面向数字化学习的领域本体的建设方法,参考了数字化学习标准建 立本体,并用o w l 表示本体,进而建立本体库。对w e b 服务进行了扩展的语义描述,因 为w e b 服务的描述缺乏足够的语义信息,使得w e b 搜索、w e b 服务发现、w e b 服务的组合 具有不确定性,为了能够根据用户提供的信息更加准确地描述并执行w e b 服务,考虑更 加丰富的功能和非功能信息,所以我们对服务语义描述方法o w l - s 进行了扩展,加入对 服务非功能属性的描述,进而建立服务库。 ( 3 ) 提出了基于本体的服务组合算法,通过服务参数概念的语义关系的推导, 获得服务之间的关联关系,构造服务组合图,综合考虑服务的功能和非功能属性,动态、 灵活地构建高质量的服务组合序列,并通过实验验证本算法的可行性。 1 4 论文组织结构 第一章绪论 分析数字化学习支撑环境构建中数字化学习软件集成中的问题,介绍通过服务组合 解决数字化学习软件集成的必要性,并对当前国内外相关的服务组合研究做了分析和比 较,提出了研究的主要问题和本文的组织结构。 第二章w e b 服务概述和服务组合关键技术 对w e b 服务的概念及其体系结构进行了概括说明,介绍了w e b 服务的核心技术,并 结合语义w e b 的发展,引入语义w e b 服务以及语义w e b 服务描述语言o w l - s ,讨论了w e b 服务组合方法。 第三章基于本体面向数字化学习环境构建的w e b 服务组合模型与实现 给出了基于本体的服务组合模型,对该模型的各个部分进行描述,说明模型的实现 流程,同时给出了基于该模型构建数字化学习环境的示例图。 第四章面向数字化学习环境的领域本体构建方法 介绍具有自学习能力且适合e - l e a r n i n gt o o l sa n dp l a t f o r m 集成与互操作的本体 建立方法,参考国内的数字化学习标准,快速、准确地构建本体,并用o w l 对本体进行 表示。 4 东北师范大学硕士学位论文 第五章扩展的服务语义描述 分析现有的服务语义描述方法,提出对o w l - s 进行扩展,加入服务质量本体,增加 对服务非功能性信息的描述。 第六章基于本体的服务组合方法 给出了服务间语义关系的定义,以及如何构建参数服务图,然后通过归并参数节点 获得服务组合图,最后基于该图进行简单的层序遍历,得到了满足服务功能性和非动能 性需求的高质量的服务组合序列。 第七章应用实验 通过实例讲解如何将基于本体的服务组合方法应用到数字化学习环境的构建中,并 与其他服务组合方法进行对比实验,分析所提出的组合方法的性能。 第八章总结了本文所做的工作,并讨论进一步研究的问题。 东北师范大学硕士学位论文 第2 章w e b 服务概述和服务组合关键技术 w e b h 艮务可以看作是一种部署在互联网上的对象或者组件,是基于x m l ,自包含、自 描述,规范的w e b 应用程序。语义w e b 是与w e b 服务共同发展的另一支撑技术。当前的服 务都是针对人设计的,、计算机并不能理解其中信息的含义。而语义w e b 的基本思想是通 过本体对w e b h 艮务进行语义标记,使计算机能够理解并使用这些服务。下面我们详细介 绍一下w e b 服务和语义w e b ,同时,也对一些常用的服务组合方法进行分析。 2 1w e b 服务概述 2 1 1w e b 服务定义和体系结构 w e b 服务是自包含、自描述的模块化应用,可以提供简单请求和复杂的业务处理功 能。n 钔一旦w e b 服务被部署,其他的应用( 包括w e b 服务) 就能够发现并调用所部署的服 务。从技术角度来看,w e b 服务描述了一系列操作接口,使用标准的x m l 消息传递技术 封装信息,并可由网络访问这些接口和操作。服务接口和服务实现的分离,促使基于 w e b 服务的应用成为松散耦合、面向构件、跨技术的实现。图2 1 给出了一个w e b 服务 的组成结构,其中契约包含了服务的目的、功能、限制和使用。 图2 1w e b 服务组成结构 w e b 服务体系结构u 勒是面向对象分析与设计( o o a d ) 的一种合理发展,同时也是面向 体系结构、设计、实现与部署而采用的组件化的合理发展。这两种方式在复杂的大型系 统中经受住了考验。和面向对象系统一样,封装、消息传递、动态绑定、服务描述和查 询也是w e b 服务中的基本概念,而且,w e b 服务另外一个基本概念就是:所有东西都 是服务,这些服务发布一个a p i 供网络中的其他服务使用,并且封装了实现细节。 下面本节介绍一下w e b 服务的体系结构一面向服务的体系结构。如图2 2 所示: 6 东北师范大学硕士学位论文 图2 2w e b 服务的体系结构 从图2 2 可以看出,s o a 结构中共有三种角色: ( 1 ) s e r v i c ep r o v i d e r :服务提供商可以发布自己的服务,并且对使用自身服务的 请求进行响应。 ( 2 ) s e r v i c er e g i s t r y :服务注册中心,注册服务,并对已经发布的服务进行分类, 并提供搜索服务,它是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描 述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服务描述中的服 务的绑定信息。对于静态绑定的服务请求者,服务注册中心是体系结构中的可选角色, 因为服务提供者可以把描述直接发送给服务请求者。同样,服务请求者可以从服务注册 中心以外的其它地方得到服务描述,例如本地文件、w e b 站点、f t p 站点、广告和服务 发现( a d v e r tis e m e n ta n dd is c o v e r yo fs e r v i c e s ,a d s ) 或发现w e b 服务( d is c o v e r yo f w e bs e r v i c e s ,d i s c o ) 。 ( 3 ) s e r v i c er e q u e s t o r :服务请求者,利用s e r v i c er e g i s t r y 查找所需的服务, 然后使用该服务。 s o a 体系结构中的组件必须具有上述一种或多种角色。在这些角色之间使用了三种 操作: ( 1 ) p u b l i s h 操作:使s e r v i c ep r o v i d e r 可以向s e r v i c er e g i s t r y 注册自己的功 能信息及访问接口。 ( 2 ) f i n d 操作:使s e r v i c er e q u e s t o r 可以通过s e r v i c er e g i s t r y 查找特定种类 的服务。 ( 3 ) b i n d 操作:使s e r v i c er e q u e s t o r 能够使用s e r v i c ep r o v i d e r 提供的服务。 为支持体系结构中的三种操作,s o a 需要对服务进行一定的描述,这种服务描述 ( s e r v i c ed e s c r i p t i o n ) 应具有以下几个重要特点:首先,要声明s e r v i c ep r o v i d e r 的语义特征。s e r v i c er e g i s t r y 使用语义特征将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 根据语义特征来匹配那些满足要求的s e r v i c e p r o v i d e r 。因此,语义特征中重要的一点就是对s e r v i c ep r o v i d e r 的分类。其次,服 务描述应该声明接口特征,以访问特定的服务。最后,服务描述还需要声明非功能特征, 如安全要求、事务要求、使用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 对s e r v i c ep r o v i d e r 的查找。 7 东北师范大学硕士学位论文 2 1 2w e b 服务核心技术 w e b 服务可以使j j 任何语言开发并部署在任何平台上。它们之间町以使用相同的语 言x 。6 3 进行通信,w e b 服务使用x m l 描述它们的接几对消息进行编码。f 面将分别 介绍w e b 服务的三个标准协议:w s d l 、u d d i 和s o a p 协议。图23 给出了w e b 服务的三 种协议在w e b 服务体系结构中的地位。 p o i l d 5 ”m l o “ m 帅 c k m e s x m l e s s b 、一一 图23w e b 服务核心技术s o a p ,w s d l ,u d d i w e b 服务的s o a p 协议用于规范服务请求者和提供者相互通信接口;w s d l 协议描述 w e b 服务的功能接口、消息类型以及调用方式,w e b 服务请求者可以根据w s d l 协议动态 调用w e b 服务;u d d i 协议提供在注册中心发布服务和查找服务的语法。服务提供者把 部署成功后的w e b 服务通过u d d i 协议发布到注册中心,并提供该服务的w s d l 描述;服 务请求者向u d d i 注册中心发出查询请求,获取w e b 服务的w s o l 描述,并根据w s d l 描 述构造s o a p 消息来调用该w e b 服务;服务代理者维护u d d i 注册中心,处理服务提供者 的u d d i 发布请求和服务请求者的u d d i 查找请求。由于这些协议都是建立在开放标准 删l 上的,是平台无关的,因此基于它们的w e b 服务具有互操作性和平台无关性。 ( 1 ) w s d l w s d l ( w e bs e r v i c ed e s c r i p t i o rl a n g u a g e w s d l ) “”为系统提供了一种它做什么以 及如何让系统去做的方法。w s d l 文件是一个x m l ,它解释了可以访问服务的地点、可 用的方法和所需的参数及其类型。它还详细描述了任何期望的响应的形式和类型。我们 可以认为w s d l 文件是个x m l 文档,用于说明一组s o a p 消息以及如何交换这些消 息。换句话说,w s d l 对于s o a p 的作用就像i d l 对于c o r b a 或c o m 的作用。山于w s d l 是) ( l l 文档,因此很容易进行阅读和编辑;但人多数情况f ,它由软件生成和使用。 w s d l 文件用于说明消息格式的表示法以x m l 架构标准为基础,这意味着它与编程 语言无关,而且以标准为基础,因此适用于说明可从不同平台、以不同编程语苦访问的 东北师范大学硕士学位论文 x m lw e bs e r v i c e 接口。除说明消息内容外,w s d l 还定义了服务的位置,以及使用什 么通信协议与服务进行通信。也就是说,w s d l 文件定义了编写使用x m lw e bs e r v i c e 的 程序所需的全部内容。 一个w s d l 文档将服务定义为一个网络端点或端口的集合。在w s d l 里,端点及消息 的抽象定义与它们具体的网络实现和参数格式绑定是分离的。这样就可以重用这些抽象 定义,一个完整的w s d l 在定义网络服务时包含以下元素: 类型:使用某种类型系统( 如x s d ) 定义数据类型 消息:通信数据抽象的带类型的定义 操作:服务所支持动作的抽象描述 端口类型:一个操作的抽象集合,该操作由一个或多个端点支持 绑定:针对一个特定端口类型的具体协议规范和数据格式规范 端口:一个单一的端点,定义成一个绑定和一个网络地址的连接 服务:相关端点的集合 ( 2 ) u d d i 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 y ,a n di n t e g r a t i o n ,u d d i ) n 羽是一套 基于w e b 的、分布式的、为w e b 服务提供的信息注册中心的实现标准规范,同时也包 含一组使企业能将自身提供的w e b 服务注册以使得别的企业能够发现的访问协议的实 现标准。u d d i 的目标是建立一个全球化的、平台无关的、开放式的体系结构,使得不 同企业能够发现彼此提供的服务。 u d d i 提供了一组基于标准的规范用于描述和发现服务,还提供了一组基于因特网 的实现。u d d i 基于现成的标准,如可扩展标记语言x m l 和简单对象访问协议s o a p ,使 得任何服务请求者与服务提供者都可以通过u d d i 注册中心来完成服务实现。 u d d i 目录条目是介绍所提供的业务和服务的x m l 文件。u d d i 目录条目包括三个 部分。“白页 介绍提供服务的公司:名称、地址、联系方式等等;“黄页包括基于 标准分类法( 例如n o r t ha m e r i c a ni n d u s t r yc l a s s i f i c a t i o ns y s t e m 和s t a n d a r d i n d u s t r i a lc 1 a s s i f i c a t i o n ) 的行业类别;“绿页 详细介绍了访问服务的接口,以 便用户能够编写应用程序以使用w e b 服务。服务的定义是通过一个称为类型模型( 或 t m o d e l ) 的u d d i 文档来完成的。多数情况下,t m o d e l 包含一个w s d l 文件,用于说 明访问x m lw e bs e r v i c e 的s o a p 接口,但是t m o d e l 非常灵活,可以说明几乎所有 类型的服务。 u d d i 技术规范自v l 规范以来,已经相继有v 2 、v 3 两个升级版本。v 2 是基本是 对v l 规范完善和功能上的补充,并无本质区别。u d d i 版本2 引入了一些关键的功能, 有了这些功能可以提高版本l 规范u d d i 注册中心的使用质量和效率。例如,如下功 能: 为复杂机构提供建模支持 更强大的客户机分类和标识符支持 增强的查询 9 东北师范大学硕士学位论文 国际化功能 基于对等的复制 ( 3 ) s o a p 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 o l ,s o a p ) n 鲫简单对象访问协议是在分散或 分布式的环境中交换信息的简单的协议,是一个基于x m l 的轻型分布式计算协议。s o a p 是一种规范,用来定义消息的x m l 格式。包含在一对s o a p 元素中的、结构j 下确的x m l 段就是s o a p 消息。s o a p 最主要的特征是建立在开放式标准的顶部,例如h t t p 和x m l , 可以在许多不同的软件和硬件平台上实现,具有跨硬件平台、操作系统、编程语言和网 络硬件平台的高度互操作性。这意味着s o a p 可用于链接企业内部和外部的不同系统。 与其他用于系统集成的通用通信协议相比,s o a p 更小巧,而且更易于实现。 s o a p 包括以下三个部分 s o a p 封装结构:定义了一个整体框架,以表示消息中包含什么内容,谁来处理 这些内容以及这些内容是可选还是必需的。 - 二- g - - s o a p 编码规则:定义了用以交换应用程序特定数据类型的一系列机制。 s o a pr p c 表示:定义了一个用于远程过程调用和应答的协议。 下图2 4 给出了基本的s o a p 交互体系结构。首先w e b 服务客户端可以到服务注册 中心发现感兴趣的服务,然后从服务提供者处获取关于服务描述的w s d l 文件。一旦得 到了w s d l 文件,w e b 服务客户端就得到了w e b 服务的相关信息:服务提供的接口、接 口地址、接口访问方式。现在有很多工具可以将w s d l 文件生成s o a p 存根程序,供客户 端使用。 图2 4 基本的s o a p 交互体系结构 w e b 服务客户端根据获得的w e b 服务信息,使用编程语言( 如j a v a 、c # 、v b 、 c + + ) 编写s o a p 客户端程序。客户端利用h t t p 、s m t p 、f t p 、j m s 等传输将s o a p 请求发 送到s o a p 服务器,s o a p 服务器对s o a p 请求消息进行解析,调用相应的方法,s o a p 服 务器接收应用程序返回的结果,并把它包装成一个s o a p 响应消息返回给w e b 服务客户 机。在w e b 服务进行交互时,s o a p 消息中的负载来源于w e b 服务的w s d l 描述。 ( 4 ) b p e l 1 0 东北师范大学硕士学位论文 b p e l 啪1 是由i b m 、m i c r o s o f t 和b e a 联合提出的。它是i b m 的w s f l 和微软的x l a n g 融合后制订的第二代基于w e b 服务的业务过程执行语言。它是一种使用x m l 编写的编 程语言。用于自动化业务流程,控制各子服务的调用和流转。它曾经被称作w s b p e l 和b p e l 4 w s 。广泛使用于w e b 服务相关的项目开发中,它具有两个功能,一是用于 编写可执行服务组合过程,二是用于定义服务协作协议。 相对于对象组装技术,服务组装更为复杂。s o a 环境中异构的、松耦合的、自主的 服务间的交互关系是动态的、按需发生的,而且缺少中央控制。因此,b p e l 提供的服 务组装模型提供了以下特性: 灵活性:服务组装模型应该具有丰富的表现能力,能够描述复杂的交互场景, 而且能够快速地适应变化。 嵌套组装:一个业务流程可以表现为一个标准的w e b 服务,并被组装到其他流 程或服务中,构成更粗粒度的服务,提高了服务的可伸缩性和重用性。 关注点分离:b p e l 只关注服务组装的业务逻辑,其他关注点比如服务质量( q o s , q u a l i t yo fs e r v i c e ) ,事务处理等,可被作为附加扩展,由具体实现平台进 行处理。 会话状态和生命周期管理:与无状态的w e b 服务不同,一个业务流程通常具有 明确的生命周期模型。b p e l 提供了对长时间运行的、有状态交互的支持。 可恢复性:这对于业务流程( 尤其对长时间运行的流程) 是非常重要的。b p e l 提 供了内置的失败处理和补偿机制,对于可预测的错误进行必要的处理。 使用b p e l 引擎可以执行b p e l 程序。现有的一些比较通用的工具有: o r a c l eb p e lp r o c e s sm a n a g e r :甲骨文公司的b p e l 标准的执行,带有 j d e v e l o p e r 和e c li p s e 的图像式模型和调配工具。 t w i s t e r :一个开放源代码的b p e l 标准的执行,支持面向服务架构和人机界面, 现名a g i l a 。 a c t i v e b p e l :一个开放源代码的b p e l 4 w s1 1 的执行。 b p w s 4 j :i b m 的b p e l 执行。 2 2 语义w e b 和本体 2 2 1 语义w e b 语义w e b 乜妇是t i mb e r n e r s - l e

温馨提示

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

评论

0/150

提交评论