(通信与信息系统专业论文)支持web服务重配置的网络结构和重配置方法的研究.pdf_第1页
(通信与信息系统专业论文)支持web服务重配置的网络结构和重配置方法的研究.pdf_第2页
(通信与信息系统专业论文)支持web服务重配置的网络结构和重配置方法的研究.pdf_第3页
(通信与信息系统专业论文)支持web服务重配置的网络结构和重配置方法的研究.pdf_第4页
(通信与信息系统专业论文)支持web服务重配置的网络结构和重配置方法的研究.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

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

文档简介

南京邮电大学硕士研究生学位论文摘要 摘要 w 曲服务( w e bs e r v i c e s ) 是遵循互操作标准实现的、部署在w e b 上的对象或者应用程 序。在互操作标准的定义下,w 曲服务构成了一个面向服务的体系架构,在这个架构中, w 曲服务可以在网络中被描述、发布、查找和调用。我们可以使用任何一种编程手段,通 过i n t e m e t 来调用这些服务。但是,这样的体系架构存在着不足,即用户只能使用单独的服 务,或是使用静态的组合服务,这些方式能提供的功能有限,灵活度不高,难以满足某些 实际应用的需要。为了解决这个问题,论文提出了w 曲服务重配置的概念,即利用i n t e m e t 上分布的现有w | e b 服务,根据用户的需求,来重配置所需的服务。通过重配置已有的服务, 可以实现以用户为中心的服务提供,提高服务提供的灵活性,节省资源成本,满足用户多 变的需求。 论文首先介绍了w 曲服务的概念以及相关的协议和技术,包括x m l 、s o a p 、w s d l 和u d d i 。为了实现w | e b 服务重配置,论文分别提出了参数、功能和逻辑这三种具体的重配 置方法,并对标准w | e b 服务的网络结构进行了改进,提出了支持w 曲服务重配置的网络结 构。 论文接着对新网络结构中的部分网络部件进行了实现。具体包括:基于b p e l 实现了工 作流引擎;基于a x i s 和s w i n g 实现了服务请求者侧的重配置客户端;基于b p e l 实现了服务 提供者侧的w 曲服务。 最后,论文描述了搭建重配置测试环境的过程,测试了w e b 服务的重配置方法,证 明了方法的基本可行性。 关键字:w e b 服务;重配置;b p e l ;工作流引擎 南京邮电大学硕士研究生学位论文a b s t r a c t a b s t r a c t w e bs e r v i c e sa r eo b j e c t so ra p p l i c a t i o n sd e p l o y i n go nt h ew e bw h i c ha r ei m p l e m e n t e d f o l l o w i n gt h ei n t e r o p e r a b i l i t ys t a n d a r d s u n d e rt h ei n t e r o p e r a b i l i t ys t a n d a r d s ,w e bs e r v i c e s c o n g i t u t eas e r v i c e - o r i e n t e da r c h i t e c t u r e i nt h i sa r c h i t e c t u r e ,w e bs e r v i c e sc a nb ed e s c r i b e d , p u b l i s h e d ,s e a r c h e da n di n v o k e d ,n l e yc a nb ei n v o k e do nt h ei n t e r n e tb ya n yk i n do f p r o g r a m m i n gm e a n s h o w e v e r i nt h es t a n d a r da r c h i t e c t u r e ,t h eu s e rc a no n l yu s eas i n g l e s e r v i c eo rs e r v i c e sw h i c hc o m p o s e ds t a t i c l y i tp r o v i d e sl i m i t e df u n c t i o n ,p o o rf l e x i b i l i t y ,a n d c a nn o ts a t i s f yt h en e e df o rs o m e p r a c t i c a la p p l i c a t i o n s i no r d e r t os o l v et h i sp r o b l e m ,t h ep a p e r p r o p o s e st h ec o n c e p to fr e c o n f i g u r a t i o no fw e bs e r v i c e s i tr e c o n f i g u r e ss e r v i c e so i lu s e r s d e m a n db yu s i n gt h ee x i s t i n gw e bs e r v i c e so nt h ei n t e r n e t b yr e c o n f i g u r a t i o no fs e r v i c e s ,i t c a np r o v i d eu s e r - c e n t r i cs e r v i c e s ,i m p r o v et h ef l e x i b i l i t yo fs e r v i c e s ,s a v et h ec o s ta n dm e e tt h e c h a n g i n gn e e d so fu s e r s f i r s t l y ,t h ep a p e ri n t r o d u c e st h ec o n c e p to fw e bs e r v i c e s ,a n dt h er e l a t e dt e c h n o l o g i e s , i n c l u d i n gx m l ,s o a p ,w s d l ,a n du d d i t h e nt h ep a p e rp r o p o s e st h r e em e t h o d so f r e c o n f i g u r a t i o n ,i n c l u d i n gp a r a m e t r i c ,f u n c t i o n a la n dl o g i c a lr e c o n f i g u r a t i o n a s l o ,t h ep a p e r p r o p o s e san e wa r c h i t e c t u r ef o rr e c o n f i g u r a t i o no fw e bs e r v i c e sb a s e do nt h es t a n d a r d a r c h i t e c t u r e t h ep a p e rt h e nm a k e si m p l e m e n t a t i o n so fs o m ec o m p o n e n t si nt h en e wa r c h i t e c u t u r ea s f o l l o w s :t h ew o r k f l o w e n g i n eb a s e do nb p e l ;t h er e c o n f i g u r a t i o nc l i e n tb a s e do na s i xa n d s w i n g ;t h ew e b s e r v i c e sb a s e do nb p e l f i n a l l y , t h ep a p e rs e t su pat e s te n v i r o n m e n tf o rr e c o n f i g u r a t i o n ,d e s i g n ss p e c i f i cs c e n a r i o s f o rt e s t i n gt h em e t h o d so fr e c o n f i g u r a t i o n ,a n dp r o v e st h eb a s i cf e a s i b i l i t yo ft h em e t h o d s k e yw o r d s :w e bs e r v i c e s ;r e c o n f i g u r a t i o n ;b p e l ;w o r k f l o we n g i n e i i 南京邮电大学学位论文原创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成 果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或 撰写过的研究成果,也不包含为获得南京邮电大学或其它教育机构的学位或证书而使用过 的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表 示了谢意。 研究生签名:垄丝兰坠日期:! ! 皇:竺! ! 兰 南京邮电大学学位论文使用授权声明 南京邮电大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文 的复印件和电子文档,可以采用影印、缩印或其它复制手段保存论文。本文电子文档的内 容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以 公布( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权南京邮电大学研 究生部办理。 研究幸答名专钦o ) :钆研究生签名:k 万j 删 导师签名:垃日期:望竖:垒:! 圭 南京邮电大学硕士研究生学位论文 第一章引言 1 1 课题背景 1 1 1w e b 服务 第一章引言 目前,被业界称为计算机i t 技术的第三次革命( 继p c 和i n t e r n e t 之后) 的w 曲服务技术 已经逐步显露出巨大的商机,并给软件业带来了一场巨变。w e b 服务的思想是:无论配置 在哪种平台、无论用什么编程语言来实现、无论运行在什么样的网络,都可以正确的调用 服务。 2 0 0 3 年8 月,w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ,万维网联盟) 给出的、e b 服务的完整定 义为:w e b 服务是支持网络上不同机器与机器共同操作的软件系统,它提供了一个能被机 器处理的w s d l 嘲( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ,w e b 服务描述语言) 所描述的接口。其 它系统根据它所指示的方式通过s o a p 【3 1 ( s i m p l eo b j e c ta c c e s sp r o t o c o l ,简单对象访问协议) 消息与w e b 服务交互,典型的方式是使用h r r p 或其它的w e b 相关标准来传输x m l 4 ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标记语言) 序列。 随着w e b 服务的技术标准日渐成熟和稳定,w e b 服务的应用正在不断普及,尤其是在 企业内部集成等方面一直稳步发展。w e b 图像软件厂商x a r a 公司于2 0 0 2 年提供了世界上 第一个图像生成w e b 服务:x a r a 在线。它是x a r a 公司提供的一个w e b 服务站点,在它上 面发布了一系列增强w e b 站点效果的w e b 服务。目前w e b 服务已经在电子政务、金融、 零售、能源、交通、电子制造、地理信息服务等行业和领域广泛应用,并且有许多成功的 案例。 随着软件厂商不断完善w e b 服务相关技术,并推出新的产品,越来越多的企业正受益 于w e b 服务。同时,各大技术提供商陆续的推出w 曲服务的构建工具,包括m i c r o s o f t 公司 的v i s u a ls t u d i o n e t 、i b m 公司的w e bs e r v i c e st o o l k i t 、s u n 公司的s u no n e 等。基于w e b 服务的公共技术标准s o a p 、w s d l 、u d d i t s l ( 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 r g r a t i o n , 统一描述、发现与集成协议) 等已经成为事实行业标准,而作为w e b 服务体系架构的领导 者的i b m 和微软公司也开始在全球推广w 曲服务技术。w 曲服务将成为将来动态商务w e b 的主流技术。 l 南京邮电大学硕士研究生学位论文第一章引言 然而,尽管当前w e b 服务技术日益成熟,越来越多稳定易用的w e b 服务共享在网络 上,但在标准w e b 服务的网络结构中,用户只能使用单独的服务,或是使用静态的组合服 务,这些方式能够提供的功能有限,灵活度不高,难以满足某些实际应用的需要。 1 1 2 重配置 在通信领域中,重配置的概念最早由欧洲提出。重配置技术是解决无线网络融合的关 键技术。重配置技术是指针对无线接入环境的异构性特点,以异构资源的最优化使用和用 户对业务的最优化体验为目标,综合可编程、可配置、可抽象的硬件环境以及模块化的软 件设计思想,使网络和终端具备支持多种接入技术,且可灵活适配能力的技术。 欧共体在2 0 0 4 年启动的第6 框架研究计划( f p 6 ) 中设立了集成研究项目“端到端重 配置”( e 2 r ) 【6 】。它是一个为期6 年的长期项目,其目标是研究重配置技术、设计重配置 设备、构建和测试重配置原型系统,通过上述环节最终证明重配置的概念。 端到端重配置具体包括终端重配置技术、网络重配置技术和业务重配置技术。 终端重配置的基本目的是使同一用户终端能够自由接入不同的无线环境,实现在多无 线电环境下的无缝漫游和切换通信。 网络重配置的基本目的是解决重配置触发、执行、控制协议等一系列问题,研究重配 置软件下载方法,并给出相应的控制和管理机制。 业务重配置的基本目的是提供所谓的“遍布服务( p e r v a s i v es e r v i c e s ) ,即用户可以在 任何时间、任何地点获得和环境适配的所需服务。 1 2 课题研究内容和意义 通过对重配置的分析,上述w e b 服务的不足可以通过重配置技术来解决。本文将端到 端重配置技术中业务重配置技术的思想引入w e b 服务领域,提出了w e b 服务重配置的概 念,即利用i n t e m e t 上分布的现有w e b 服务,根据用户的具体需求,来重配置所需的服务。 具体包括参数、功能、逻辑三种重配置方法:参数重配置方法是指服务请求者通过改变服 务的入口参数来重配置服务,原有的服务组成逻辑和调用的服务并不发生改变,只是由于 参数的不同而得到不同的返回结果;功能重配置方法是指在不改变服务组成逻辑的基础 上,服务请求者根据用户需求来改变具体调用的服务,以满足不同功能的需要;逻辑重配 置方法是指服务请求者根据用户需求来重配置服务模板,包括改变抽象流程和具体调用的 服务,从而形成一个新的服务组成逻辑。 2 南京邮电大学硕士研究生学位论文第一章引言 通过重配置已有的服务,可以实现以用户为中心的服务提供,提高服务提供的灵活性, 节省资源成本,满足用户多变的需求。从用户的角度米说,服务重配置能够更好的匹配用 户的要求,同时将调用各单独服务的逻辑隐藏在流程内进行,对于服务的调用也就更方便、 更简练。从开发者的角度来说,通过对服务的重配置,能产生各种新的服务,并有效的节 省开发时间成本。从服务提供者的角度来说,能够降低提供各种服务的配置成本和运行成 本。从各单独服务的角度来说,服务重配置能够为服务的调用提供结构化的表示,将服务 逻辑映射到流程描述中,而不是映射到服务内,使得服务能够有更广泛的同时也是更专一 的功能实现。 本文提出了一种支持w e b 服务重配置的网络结构,在标准w 曲服务网络结构中服务请 求者、服务提供者和服务注册中心的基础上新增了工作流引擎、注册门户、模板库、映射 代理和领域本体库五个网络部件。本文对该网络结构中的工作流引擎、服务请求者和服务 提供者进行了实现工作。具体包括:基于b p e l 【7 1 ( b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g e ,业 务流程执行语言) ,利用o r a c l eb p e l m a n a g e r 【8 】开发实现了工作流引擎,支持参数和功能重 配置的方法;基于s o a p i j i 擎a x i s 嘲和j a v a 的s w i n g 组件【1 0 】实现了服务请求者侧的重配置客 户端,包括与工作流引擎问的接口程序以及用户界面程序;基于b p e l 实现了服务提供者侧 的w 曲服务,包括用户信息查询服务和一些简单的信息查询服务。本文的最后搭建了重配 置测试环境,设计了具体的重配置测试场景,测试了w 曲服务的重配置方法。 1 2 课题来源 本课题来源于本人所参加的一项江苏省高技术研究项目。本人所做的工作可陈述如 下:( 1 ) 在标准w e b 服务网络结构的基础上提出了支持w e b 服务重配置的网络结构和对 应的三种重配置方法,并基于此研究成果申请国家专利一项;( 2 ) 完成了新网络结构中部 分网络部件的实现工作。 1 3 论文结构安排 论文的具体安排如下: 第一章介绍了课题背景,研究内容和意义,课题来源以及论文的结构安排。 第二章首先介绍w e b 服务的概念、特点,接着介绍它的关键技术,最后介绍了标准 w e b 服务的网络结构。 第三章介绍了w e b 服务重配置的概念,提出了参数、功能和逻辑三种不同的重配置 3 南京邮电大学硕士研究生学位论文第一章引言 方法。将标准w e b 服务的网络结构进行了改进,提出了支持w 曲服务重配置的网络结构。 第四章对第三章提出的新网络结构中的部分网络部件进行了实现,具体包括:基于 b p e l 实现了工作流引擎,支持参数和功能重配置的方法;基于a x i s 和s w i n g 实现了服务 请求者侧的重配置客户端;基于b p e l 实现了服务提供者侧的一些简单w e b 服务。 第五章搭建了重配置测试环境,提出了重配置测试场景,利用第四章中实现的工作 流引擎、重配置客户端和w e b 服务,进行了参数和功能重配置方法的测试。 第六章对论文的工作进行总结和展望。 4 南京邮电大学硕士研究生学位论文第二章w e b 服务 2 1w e b 服务的概念 第二章w e b 服务 随着网络的蓬勃发展和人们对计算机应用的巨大需求,w e b l 艮务应运而生。w 曲服务 的思想是:无论配置在哪种平台、无论用什么编程语言来实现、无论运行在什么样的网络, 都可以正确的调用服务。 从表面上看,w e b 服务就是一个应用程序,它向外界暴露出一个能够通过w e b 进行调 用的a p i ,是一种部署在w e b 上的对象或者组件。这就是说,其他程序能够用编程的方法 通过w e b 来调用这个应用程序。 w 曲服务具有以下特征【1 1 】: ( 1 ) 完好的封装性:w e b 服务既然是一种部署在w e b 上的对象,自然具备对象的良好 封装性。对于使用者而言,仅能看到该对象提供的功能列表。 ( 2 ) 松散耦合:当个w e b 服务的内部实现发生变更的时候,调用者是不会感觉到的。 对于调用者来说,只要w e b 服务的调用接口不变,w e b 服务实现的任何更变对他们来说都 是透明的。 ( 3 ) 使用标准协议规范:作为w e b 服务,其所有公共的协约完全需要使用开放的标准 协议进行描述、传输和交换。同时,相比一般对象而言,其界面调用更加规范化,更易于 机器理解。 ( 4 ) 高度可集成能力:由于w e b 服务采取简单的、易于理解的标准协议作为组件界面 描述,所以完全屏蔽了不同软件平台的差异,因此,无论是c o r b a 、d c o m 还是e j b 都 可以通过这一种标准的协议进行互操作,实现了在当前环境下最高的集成性。 由于w e b 服务的技术标准日渐成熟和稳定,w e b 服务的应用正在不断普及,尤其是在 企业内部集成等方面一直稳步发展。目前w e b j 艮务已经在电子政务、金融、零售、能源、 交通、电子制造、地理信息服务等行业和领域广泛应用,并且有许多成功的案例。软件业 内咨询机构s t e n c i lg r o u p 认为,w e b j 艮务技术的应用将经历早期应用、系统的部署、新业务 模式等几个阶段: 5 南京邮电大学硕士研究生学位论文第一章w e b 服务 2 0 0 2 年中期以前为第一阶段。在这个阶段内更强调内部集成项目,其驱动凶素 是成本效益和挖掘已有投资效益的能力。早期应用者主要来自金融服务、高技 术制造、通信、汽车和保险等领域。 从2 0 0 2 年中到2 0 0 4 年初为第二阶段。在这个阶段,企业将系统地、策略地开发 和采用w e b 服务,以理顺已的业务流程。 进入第三阶段后,将会出现以w e b 服务驱动的新的业务模式,并实现真正的、 动态的业务关系。 国内外基于w e b 服务的成功案例也有很多。2 0 0 2 年,x a r a 公司提供了世界上第一个 图像生成w e b 服务:x a r a 在线。它是w e b 图像软件厂商x a r a 公司提供的w e b 服务站点, 在它上面发布了一系列增强w e b 站点效果的w e b 服务。为了演示其提供w e b 服务的可信 任度,x a r a 创建了图像生成的w e b 服务,它使用x a r a 具有专利技术的三维软件来实时创 建三维图像标题。2 0 0 2 年6 月,s e q u o i ab r o a d b a n d 公司发布了新一代数字媒体网络平台 s e q u o i am e d i am a n a g e r ,在美国市场得到了很好的应用和推广。s e q u o i a 利用i p e d ox m l 数据库中内置的w e b 服务来控制远端节点。远端节点一旦收到媒体,播放媒体或者被中断 都会用x m l 记录下来,并通过s o a p 经广域网发送到中心的i p e d ox m l 数据库中。目前, s e q u o i ab r o a d b a n d 已经与i b m 在北京联手建立了媒体网络控制中心,希望借此拓展在亚 洲的市场。 随着软件厂商不断完善w e b 服务相关技术,并推出新的产品,越来越多的企业正受益 于w e b 服务。同时,各大技术提供商陆续的推出w e b 服务的构建工具,包括m i c r o s o f t 公 司的v i s u a ls t u d i o n e t 、i b m 公司的w e bs e r v i c e st o o l k i t 、s u n 公司的s u no n e 等。基于 w e b 服务的公共技术标准s o a p 、w s d l 、u d d i 等已经成为事实行业标准,而作为w e b 服务体系架构的领导者的i b m 和微软公司也开始在全球推广w e b 服务技术。w e b 服务将 成为将来动态商务w r e b 的主流技术。 2 2w e b 服务的关键技术 w e b 服务体系中的关键技术包括x m l 、s o a p 、w s d l 和u d d i 。由它们构成的w e b 服务协议栈如图2 1 所示。 6 南京邮电大学硕士研究生学位论文第二章w e b 服务 服务发布与发现 u d d i 服务描述w s d l 服务消息 s o a p 服务传输 h t t p 图2 iw e b 服务协议栈 在图2 1 中的协议栈中,描述了w e b 服务体系结构中使用的各种协议的相互关系。 最底层是服务传输层,该层一般使用h ,盯p 协议,因为h t t p 的请求应答模式十分符 合r p c 类型调用。 服务消息层的协议定义了消息的格式,在这一层里是以s o a p 为协议的。s o a p 的基 础是x m l ,也即是说,s o a p 消息一定都是x m l 格式的。 服务描述层的协议用于对如何使用这个w e b 服务进行描述,描述信息一般包括使用到 的数据类型、消息格式、方法名称和参数等等。w s d l 也是以x m l 为基础的。 服务发布和发现层的协议是供注册中心这个角色使用的,u d d i 是目前使用最广泛的 注册中心。 下面将具体介绍这些协议。 2 2 1x n , x m l 【4 j ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标记语言) 是由w 3 c 组织于1 9 9 8 年2 月 制定的一种通用语言规范,它以一种开放的自我描述方式定义数据结构,在描述数据内容 的同时能突出对结构的描述,从而体现出数据之间的关系。 x m l 是一种平台无关的表示数据的方法。简单地说,使用x m l 创建的数据可以被 任何应用程序在任何平台上读取,甚至可以通过手动编码来编辑和创建x m l 文档。其原 因是,x m l 与h t m l 一样,都是建立在相同的基于标记技术基础之上。 x m l 不是h t m l 的替代品,x m l 和h t m l 是两种不同用途的语言。x m l 是用来描 述数据的,侧重描述什么是数据,如何存放数据,而h t m l 是用来显示数据的,侧重描述 如何显示数据;h t m l 是与显示信息相关的,而x m l 则是与描述信息相关的。 一个简单的x m l 例子【】,描述的是r a m b a u g h 给j a m e s 的便条: 7 南京邮电大学硕士研究生学位论文第二章w e b 服务 j a m e s r a m b a u g h r e m i n d e r d o n tf o r g e tt oc a l lm et h i sw e e k e n d ! 这个便条有信息头,又有信息主体,还包括发送入和接收人。尽管如此,这个x m l 文档仍然什么都不做,它只是用x m l 标记存储信息的文件。 。 2 2 2s o a p s o a p t 3 1 ( s i m p l eo b j e c t a c c e s sp r o t o c o l ,简单对象访问协议) 是一个基于x m l 的简单协 议,它为在一个松散的、分布的环境中使用x m l 对等地交换结构化的和类型化的信息提供 了一个简单的轻量级机制。s o a p 本身并不定义任何应用语义,如编程模型或特定语义实 现,它只是定义了一种简单的机制,通过一个模块化的包装模型和对模块中特定格式编码 的数据重编码机制来表示应用语义。s o a p 的这项能力使得它可被很多类型的系统用于从 消息系统至t j r p c ( r e m o t ep r o c e d u r ec a l l ) 的延伸【1 2 1 。 s o a p 协议由以下四部分组成: s o a p 信封( e n v e l o p ) ,封装定义了一个整体的表示框架。用于描述消息中的内容是 什么,是谁发送的,谁应当接受并处理它以及如何处理。 s o a p 编码规贝1 ( e n c o d i n gr u l e s ) ,它定义了一个数据的编码机制,用于表示应用程 序需要使用的数据类型的实例。例如可能应订单服务的需要,使用s o a p 编码规 则定义订单的数据类型,并可以在订单生成的客户端与订单服务之间交换订单实 例。 s o a pr p c 表示( r p cr e p r e s e n t a t i o n ) ,定义了一个用于表示远程过程调用和应答的 约定。例如如何使用h t t p 或s m t p 协议与s o a p 绑定,如何传输过程调用,在 具体传输协议的哪个部分传输过程响应,。如何我们可以在h t t p 的响应的时候传 递过程响应。 s o a p 绑定( b i n d i n g ) ,它定义了一个使用底层传输协议来完成在节点间交换s o a p 信息的约定。 r 南京邮电大学硕士研究生学位论文第二章w e b 服务 虽然这四个部分都作为s o a p 协议的一部分,是作为一个整体定义的,但他们在功能 上是相交的、彼此独立的。特别的,封装和编码规则是被定义在不同的x m l 命名空间中, 这样使得定义更加简单。 通常,s o a p 消息在应用程序之间传输,从最初的发送者传送到终端的接受者的过程 中,它们可能会通过一些中间介质。s o a p 消息一般由一个e n v e l o p e 元素附带一个可选的 h e a d e r 元素和一个必须的b o d y 元素组成。e n v e l o p e 是x m l 文档形式的s o a p 消息中的 根元素;h e a d e r 则是在松散环境下在通信双方之间尚未预先达成一致的情况下为s o a p 消 息增加特性的通用机制;b o d y 定义了很少的一些属性来指明谁可以处理以及它是可选处理 还是强制处理。 例如在使用一个股票查询w e b 服务时进行的s o a p 交互如下: 调用请求s o a p 消息为: 调用响应s o a p 消息有: 9 南京邮电大学硕士研究生学位论文第二二章w e b 服务 s o a pe n v e l o p e 元素是表示s o a p 消息的x m l 文档的根元素。x m l 命名空间则用来 消除s o a p 标识符与应用定义的标识符之间可能存在的理解歧义。s o a p 消息总是通过某 一种网络传输协议来实施传输,这个例子使用了s o a p 的h ,丌p 绑定。 2 2 3w s d l w s d l l 2 ( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ,w e b 服务描述语言) 是一种x m l 应用,它 将w r e b 服务描述定义为一组服务访问点或端口的集合,客户端可以通过这些服务访问点对 包含面向文档信息或面向过程调用的服务进行访问( 类似远程过程调用) 。在w s d l 中,由 于服务访问点和消息的抽象定义己从具体的服务部署或数据格式绑定中分离出来,因此可 以对抽象定义进行再次使用。消息,指对交换数据的抽象描述;而端口类型,指操作的抽 象集合。用于特定端口类型的具体协议和数据格式规范构成了可以再次使用的绑定。将w e b 访问地址与可再次使用的绑定相关联,可以定义一个端口,而端口的集合则定义为服务。 因此,w s d l 文档在w e b 服务的定义中使用下列元素: t y p e s 一数据类型定义的容器,它使用某种类型系统( 一般使用x m ls c h e m a 中的 类型系统) 。 m e s s a g e - 通信消息的数据结构的抽象类型化定义。使用t y p e s 所定义的类型来定 义整个消息的数据结构。 1 0 南京邮电大学硕士研究生学位论文第_ 章w e b 服务 o p e r a t i o n 对服务中所支持的操作的抽象描述,一般单个o p e r a t i o n 描述了一个访 问入口的请求响应消息对。 p o r t t y p e - 对于某个访问入口点类型所支持的操作的抽象集合,这些操作可以由 一个或多个服务访问点来支持。 b i n d i n g 一特定端口类型的具体协议和数据格式规范的绑定。 p o r t 定义为协议数据格式绑定与具体w e b 访问地址组合的单个服务访问点。 s e r v i c e 相关服务访问点的集合。 其中,t y p e s 是一个数据类型定义的容器,包含了所有在消息定义中需要的x m l 元素 的类型定义。 m e s s a g e 具体定义了在通信中使用的消息的数据结构,m e s s a g e 元素包含了一组p a r t 元素,每个p 叭元素都是最终消息的一个组成部分,每个p a r t 都会引用一个d a t a t y p e 来 表示它的结构。p a r t 元素不支持嵌套( 可以使用d a t a t y p e 来完成这方面的需要) ,都是并列 出现。 p o r t t y p e 具体定义了一种服务访问入1 2 1 的类型,所谓访问入口的类型就是传入传出消 息的模式及其格式。一个p o r t t y p e 可以包含若干个o p e r a t i o n ,而一个o p e r a t i o n 则是指访 问入口支持的一种类型的调用。在w s d l 里面支持四种访问入口调用的模式:单请求;单 响应;请求响应:响应请求。在这里请求指的是从客户端到w e b 服务端,而响应指的是 从w e b 服务端到客户端。p o r t t y p e 的定义中会引用消息定义部分的二个到两个消息,作为 请求或响应消息的格式。 b i n d i n g 结构定义了某个p o r t t y p e 与某一种具体的网络传输协议或消息传输协议相绑 定,从这一层次开始,描述的内容就与具体服务的部署相关了。比如可以将p o r t t y p e 与 s o a p h t t p 绑定,也可以将p o r t t y p e 与m i m e s m t p 相绑定等。 p o r t 描述的是一个服务访问入口的部署细节,包括通过哪个w e b 地址( u i 也) 来访问, 应当使用怎样的消息调用模式来访问等。其中消息调用模式则是使用b i n d i n g 结构来表示。 s e r v i c e 描述的是一个具体的被部署的w e b 服务所提供的所有访问入口的部署细节, 一个s e r v i c e 往往会包含多个服务访问入口,而每个访问入口都会使用一个p o r t 元素来描 述。 一个w s d l 示例文档t 1 4 1 如下所示,该文档是一个提供股票报价的w e b 服务的w s d l 定 义,该服务接受一个类型为字符串的股票代码,并返回类型为浮点数的价格。 南京邮电大学硕士研究生学位论文第二章w e b 服务 南京邮电大学硕士研究生学位论文第二章w e b 服务 以上部分是服务的抽象定义部分。该抽象定义中包括对t y p e s 、m e s s a g e 、o p e r a t i o n 和p o r t t y p e 等的定义。 这部分将服务的抽象定义与s o a ph 1 限绑定,描述如何通过s o a p h t t p 来访问前 面描述的访问入口。 1 3 南京邮电人学硕士研究生学位论文 第二章w e b 服务 这部分是具体的w e b 服务的定义。在这个名为s t o c k q u o t e s e r v i c e 的w e b 服务中,提 供了一个服务访问入口,访问地址是”h t t p :e x a m p l e c o m s t o c k q u o t e ,使用的消息模式是由 前面的b i n d i n g 所定义的,访问入口和b i n d i n g 一起构成一个端口。 2 2 4u d d i u d d i 5 ( 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 r g r a t i o n ,统一描述、发现与集成协议) 构建于网络传输层和基于s o a p 的x m l 消息传输层之上,其中包含了通过程序手段可以 访问到的对企业和企业支持的服务所做的描述。此外,还包含对w e b 服务所支持的因行业 而异的规范、分类法定义( 用于对于企业和服务很重要的类别) 以及标识系统( 用于对于 企业很重要的标识) 的引用。u d d i 提供了一种编程模型和模式,它定义与注册中心通信 的规则。u d d i 规范中所有a p i 都用x m l 来定义,包装在s o a p 信封中,在h t t p 上传 输。 u n n a n t is 。o a p 图2 - 2u d d i 消息传输图 1 4 南京邮电大学硕士研究生学位论文 第二章w e b 服务 然后再反向传输。注册中心服务器的s o a p 服务器接收u d d is o a p 消息、进行处理,然后 把s o a p 响应返回给客户机。就注册中心条例而言,客户机发出的要修改数据的请求必须 确保是安全的、经过验证的事务1 5 1 。 u d d i 注册中心里的数据从概念上可以分为四类,每一类表示u d d i 最上层的一种实 体。每个这样的实体都指定有自己的u u i d ,利用这个标识符总能在u d d i 注册中心的上 下文中找到它: 技术模型( t e c h n i c a lm o d e l ) ; 企业( b u s i n e s s ) ; 企业服务( b u s i n e s ss e r v i c e ) ; 服务绑定( s e r v i c eb i n d i n g ) 。 我们可以把企业与服务的注册信息分成以下三组:白页、黄页和绿页。白页表示有关 企业的基本信息,如企业名称、经营范围的描述、联系信息等等。黄页信息通过支持使用 多种具有分类功能的分类法系统产生的类别划分,能够在更大的范围内查找在注册中心注 册的企业或服务。这样的类别划分不仅可以关联企业及其服务,还可以关联t m o d e l 。只提 供白页和黄页中的一种或者两种都提供,对于通过程序发现和使用服务,注册中心的条目 的价值就很有限。为此,有关怎样、哪里能通过程序的方式调用服务的信息就很有必要了, 而绿页就提供了这样的信息。绿页是指与服务相关联的绑定信息,并提供了指向这些服务 所实现的技术规范的引用和指向基于文件的u r l 的不同发现机制的指针。 u d d i 注册中心由u d d i 规范的一种或多种实现组成,它们可以互操作以共享注册中 心数据。有一种特殊的u d d i 注册中心是由一组对外公开访问的叫做节点的u d d i 实现构 成。它们互操作以共享注册中心数据,合在一起就形成了u d d i 服务注册中心。该注册中 心免费向大众开放。在所有的运营商站点上都冗余的放着u d d i 服务注册中心的全部条目, 但只有在创建条目的站点才能对条目进行更改。 南京邮电大学硕士研究生学位论文第二章w e b 服务 2 3 标准w e b 服务的网络结柯 标准w 曲服务的网络结构如图2 - 3 所示: 图2 3 标准w e b 服务的网络结构图 在图2 3 所示的标准w e b 服务的网络结构中,包含了三种网络部件:服务提供者、服 务注册中心和服务请求者。简单地说,服务提供者就是w e b 服务的拥有者,它用户提供自 己已有的功能;服务请求者就是w e b 服务功能的使用者,它利用s o a p 消息向服务提供者 发送请求以获得服务;服务注册中心的作用是把一个服务请求者与合适的服务提供者联系 在一起,它充当管理者的角色,一般是u d d i 。这些网络部件之间使用以下三种操作; 1 发布操作:使服务提供者可以向服务注册中心注册自己的功能及访问接口。 2 查找操作:使服务请求者可以通过服务注册中心查找特定种类的服务。 3 绑定操作:使服务请求者能够真正使用服务提供者提供的服务。 各个网络部件之间的交互过程如下: 1 服务提供者发布自己的服务,并对服务请求进行响应; 2 服务注册中心注册已经发布的w e b 服务,对其进行分类,并提供搜索服务; 3 服务请求者利用服务注册中心查找所需的服务,然后使用该服务。 2 4 本章小结 在本章中,我们首先介绍了w e b 服务的概念、特征以及发展过程;接着介绍了w e b 服务相关的协议和技术,包括x m l 、s o a p 、w s d l 和u d d i ;最后介绍了标准w e b 服务 的网络结构。在下一章中我们将提出w e b 服务重配置的概念,并对标准w e b 服务网络结 构进行改进,以支持w e b 服务的重配置。 1 6 南京邮电大学硕士研究生学位论文第三章w e b 服务重配置的方法和网络结构 第三章w e b 服务重配置的方法和网络结构 3 1w e b 服务重配置的提出 在上一章介绍的标准w e b 服务的网络结构中,服务请求者只能使用单独的服务,或是 使用静态的组合服务( 这些服务都静态存储在服务提供者中) 。这些方式能提供的功能有 限,灵活度不高,难以满足某些实际应用的需要。 本文将端到端重配置技术中业务重配置技术的思想引入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 服务逻辑重配置方法是指服务请求者根据用户需求来重配置服务模板,包括 改变抽象流程和具体调用的服务,从而形成一个新的服务组成逻辑。 通过重配置已有的服务,可以实现以用户为中心的服务提供,提高服务提供的灵活性, 节省资源成本,满足用户多变的需求。从用户的角度来说,服务重配置能够更好的匹配用 户的要求,同时将调用各单独服务的逻辑隐藏在流程内进行,对于服务的调用也就更方便、 更简练。从开发者的角度来说,通过对服务的重配置,能产生各种新的服务,并有效的节 省开发时间成本。从服务提供者的角度来说,能够降低提供各种服务的配置成本和运行成 本。从各单独服务的角度来说,服务重配置能够为服务的调用提供结构化的表示,将服务 逻辑映射到流程描述中,而不是映射到服务内,使得服务能够有更广泛的同时也是更专一 的功能实现。 1 7 南京邮也大学硕士研究生学位论文第三章w e b 服务重配置的

温馨提示

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

评论

0/150

提交评论