(计算机应用技术专业论文)基于web+services的校园分布式信息平台的研究与设计.pdf_第1页
(计算机应用技术专业论文)基于web+services的校园分布式信息平台的研究与设计.pdf_第2页
(计算机应用技术专业论文)基于web+services的校园分布式信息平台的研究与设计.pdf_第3页
(计算机应用技术专业论文)基于web+services的校园分布式信息平台的研究与设计.pdf_第4页
(计算机应用技术专业论文)基于web+services的校园分布式信息平台的研究与设计.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(计算机应用技术专业论文)基于web+services的校园分布式信息平台的研究与设计.pdf.pdf 免费下载

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

文档简介

西南科技大学硕士研究生学位论文第1 页 摘要 现阶段校园信息化建设面临多个问题:现存的信息系统之间交互性较差、 数据重复、信息不同步、信息孤岛等。本文分析了其他高校“数字校园”建 设方案及企业应用集成的案例,分析了w e bs e r v i c e s 的细节和优势。结合现 有条件和具体需求,提出了将w e bs e r v i c e s 应用于校园分布式信息平台建设 的方案。 研究并构建了一个基于w e bs e r v i c e s 的校园分布式信息平台。进行数据 建模,为各部门制订了数据的调用格式,为实现数据以规范的x m l 格式传递 提供了可能。编写服务接口,将具体应用封装为服务并发布,使用w s d l 文件 实现对服务的描述。客户端通过访问w s d l 文件构建本地代码,进而实现对远 程数据的访问和维护。实现了在分布式环境中将数据以x m l 格式通过s o a p 封装进行传输。实现了在私有u d d i 注册中心的服务的发布和发现,为动态地 发现、调用服务提供了可能。较好地解决了信息孤岛等问题,实现了学校各 部门、学院之间数据的共享。 研究了系统中的w e b 服务调用模式。分析、解决了系统开发过程中面临 的分布式系统的主要技术问题,针对系统的安全问题提出了解决方案。对系 统的功能、性能进行了测试。 关键词:w e bs e r v i c e s分布式系统 a x i s j w s d p 西南科技大学硕士研究生学位论文第1 l 页 a b s t r a c t n o w a d a y s ,t h eb u i l d i n go fi n f o m a t i o nc a m p u sf a c e sm a n yp r o b l e m s ,p o o r i n t e r a c t i o nb e t w e e ne x i s t i n gi n f o r m a t i o ns y s t e m s ,d a t ar e p e t i t i o n ,i n f o r m a t i o n n o ts y n c h r o n i z a t i o n ,i s o l a t e di n f b m a t i o ni s l a n d ,a n ds oo n t h i st h e s i sa n a l y z e s t h eb u i l d i n gs c h e m eo fd i g i t a lc a m p u si no t h e ru n i v e r s i t i e sa n dt h ec a s eo f e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,a n a l y z e st h ed e t a i l sa n da d v a n t a g eo fw e b s e r v i c e s g i v e sas c h e m eo f 印p l y i n gw e bs e r v i c e si nb u i l d i n go fd i s t r i b u t i o n i n f o 珊a t i o np l a t f o r mo fc 锄p u sb a s e do nt h ep r e s e n tc o n d i t i o n sa n dc o n c r e t e r e q u i r e m e n t s s t u d i e sa n db u i l d sad i s t r i b u t i o ni n f b r m a t i o np l a t f o r mo fc a m p u sb a s e do n w e bs e r v i c e s c a r r i e so nm ed a t am o d e l i n g ,w o r k so u tt h ei n v o k i n gf o r m a to f d a t af b re v e r yd e p a r t m e n t ,a n dm a k e si tp o s s i b l et ot r a n s m i td a t aa c c o r d i n gt o s t a n d a r dx m lf o m a t w r i t e st h ei n t e r f a c eo fs e r v i c e ,p a c k a g e st h ec o n c r e t e a p p l i c a t i o n st os e r v i c e s ,t h e np u b l i s h e st h e m ,d e s c r i b e st h es e r v i c e su s i n gw s d l d o c u m e n t s t h ec l i e n tb u i l d s t h el o c a lc o d et h r o u g hv i s i t i n gw s d ld o c u m e n t , t 1 1 e nv i s i t sa n dm a i n t e n a n c e st h er e m o t ed a t a r e a l i z e st r a n s m i t t i n gd a t ai nx m l f b m a tt h r o u g hs o a pp a c k a g i n gi nd i s t r i b u t e de n v i r o n m e n t r e a l i z e sp u b l i s h i n g a n df i n d i n gs e r v i c e si np r i v a t eu d d ir e g i s t r yc e n t e r m a k e si tp o s s i b l et on n d a n di n v o k es e r v i c e sd y n a m i c a l l y b e t t e rr e s o l v e s t h ep r o b l e m so fi s o l a t e d i n f o m a t i o ni s l a n da n ds oo n ,a n dr e a l i z e st h ed a t as h a r i n gb e t w e e nd e p a r t m e n t s a n dc o l l e g e si nc a i n p u s s t u d i e st h ei n v o k i n gm o d eo fw e bs e r v i c e si ns y s t e m a 1 1 a l y z e sa n dr e s o l v e s t h em a i nt e c h n i c a lp r o b l e m so fd i s t r i b u t i o ns y s t e mp r e s e n t i n gi nt h ed e v e l o p m e n t p r o c e s so fs y s t e m ,a n dp r o p o s e st h es e c u r i t yp r o b l e ms o l u t i o nf o rs y s t e m t e s t s m ef u n c t i o na n dp e r f o r m a n c eo ft h es y s t e m k e y w o r d s :w e bs e r v i c e s ;d i s t r i b u t i o ns y s t e m ;a x i s ;j w s d p 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中 不包含其他人已经发表或撰写过的研究成果,也不包含为获得西南科技大 学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对 本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 签名:加自 1 日期:l 。o5 6 关于论文使用和授权的说明 本人完全了解西南科技大学有关保留、使用学位论文的规定,即:学 校有权保留学位论文的复印件,允许该论文被查阅和借阅;学校可以公布 该论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的学位论文在解密后应遵守此规定。) 签名: ” 导师签名:籍概 日期:j 口口f 矿 西南科技大学硕士研究生学位论文第1 页 1 绪论 1 1 课题的学术背景及理论与实际意义 现阶段,高等院校校园信息化建设飞速发展。高校内部学院、部门利用 计算机技术和网络通讯技术,根据自身具体需求开发、使用各自的一套信息 管理系统,实现日常教学、科研、办公的信息化、数字化管理。 然而,由于在信息化建设初期没有一个全局的战略和方向,所以校园网 中现存的各个子系统之间存在着各种差异:部署平台的不同,采用的数据库 管理系统不同,采用的开发技术不同等问题,造成了这些系统的扩展性和交 互性较差,系统之间相互独立,形成了一个个的信息孤岛,在各个异构系统 之间进行信息通信、数据交换和数据共享比较困难,造成了数据冗余度大, 数据不一致,资源浪费等弊端。如何在较好地保护现有软件资源和数据资源 的情况下,把校园内这些现有的异构信息系统和正要开发的新的应用系统的 信息资源进行有机的整合集成,使用户能够得到动态的,在时间和空间上一 致的信息服务,这是当前推进信息化校园建设,较好地发挥校园网作用所急 需解决的一个核心问题”“。 w e b 服务( w e bs e r v i c e s ) 技术正是针对这一问题的最佳解决方案。基于 x m l 的w e b 服务技术具备跨平台特性和松散偶合特性,并提供了服务的注册 与检索机制,从而可以有力地支持分布式环境下的资源共享与协同工作。通 过w e b 服务技术,能够在现有各种异构平台的基础上构建一个通用的,与平 台无关、语言无关的技术层。在这个技术层上,各种不同平台之上的应用程 序可以实现彼此之问的连接和集成。由此可以屏蔽不同软件平台的差异,无 论是c o r b a ,d c o m ,还是e j b 都可以通过这种标准的方式进行互操作,实时 地访问不同系统、不同应用和不同平台的信息”“。 在校园信息化建设中引入w e b 服务技术,可以充分利用其先进性技术, 利用w e b 服务所提供的基于x m l 的标准接口,以及完好的封装性、松散的耦 合性、协议规范的标准性和高度的可集成性等特点,在现有的各种m i s 资源 上构建起一个实现基于u d d i 的信息服务的注册与检索的信息共享平台。采用 层次化和整体化的观点,实现对学校的教学、科研、管理等各种信息资源全 面的信息化管理。通过对这些信息资源进行合理的整合,形成一个统一、同 步的数字空间。 西南科技大学硕士研究生学位论文第2 页 1 2 国内外研究现状 1 2 1 校园信息化建设的研究现状 我国信息化校园建设起步较晚,但近几年我国高等院校的信息化校园建 设还是取得了较大的发展。以1 9 9 4 年国家教委主持的“中国教育科研网 ( c e r n e t ) ”正式启动为标志,全国大部分高校己经逐步建立起校园网,网 络己连接到校内的主要办公楼、教学楼、实验楼、图书馆,建立了网络中心 和多媒体教室,在硬件的基础建设上己经达到了一定的水平。在此基础上, 很多大学己经明确了信息化校园的战略目标,基于校园网的信息化应用系统 也纷纷建立起来乜“。现在,如何把校园内现有的信息系统和正要开发的应用 系统的数据、资源进行有效的整合集成,使得各个系统能够共享数据,无缝 衔接,使用户能够得到动态的,在时间和空间上一致的信息服务环境,充分 发挥校园网作用,这是推进信息化校园建设急需解决的一个核心问题。 近年来,清华大学、中国人民大学、复旦大学等国内知名高校在经历了 初期的信息化建设后,纷纷提出了“校园信息化建设的再认识”的类似口号。 这些高校原有的信息系统主要存在下述问题:不同部门开发的应用系统有多 个,采用不同的数据库系统管理数据,应用系统采用不同时期的技术开发, 并且每个应用系统使用自己独立的用户管理与认证系统,拥有自己独立的访 问入口;系统之间采用软盘等离线方式实现数据交换,信息孤岛现象严重; 用户需要记住一大堆系统入口、用户名和口令,使用风格各异的操作界面, 在增大了培训工作量的同时用户满意度还不高”4 “3 。在新的信息化建设的 过程中,大都采用“完成全校信息系统的统一用户管理与认证,使全校用户 在所有的信息系统中都使用唯一的电予身份”、“建立一个整合型的为全校提 供服务的数据中心,统一管理数据”、“将原有的综合信息服务系统升级为学 校信息门户,实现全校信息系统的集成”等措施,这样的方案无疑能达到宏 观较好的效果,但这些措施的实施需要强大有力的后台支持,将会耗费大量 的人力、财力,整个信息化建设周期长。 在另外一些各方面条件比较有限的情况下,软件、硬件、人力、财力资 源都很薄弱,所以往往不能采用上述的方式来解决相似的问题。而是从现有 的条件出发,主要针对现阶段校园内部多个信息系统之间扩展性和交互性较 差、数据重复、信息不同步、资源浪费等问题期待采用一种较为轻便的解决 方案。 西南科技大学硕士研究生学位论文第3 页 1 2 2w e bs e r vic e s 在e a i 中的研究现状 从1 9 9 8 年开始发展的x m l 技术,以及近几年蓬勃发展的基于x m l 的w e b s e r v i c e s 技术为解决异构平台上的信息交互问题带来了新的希望。w e b s e r v i c e s 技术能够在现有的各种异构平台的基础上构筑一个通用的、平台无 关、语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实旋彼 此的连接和集成。介于此,w e bs e r v i c e s 在b 2 b 电子商务领域扮演了重要的 角色:将商务应用低代价方便地联系在一起,实现大范围的跨企业实体的商 务应用系统对接。另外,w e bs e r v i c e s 也是实现企业应用集成( e n t e r p r i s e a p p l i c a t i o ni n t e g r a t i o n ,e a i ) 的首选技术之一。 从实施的深度来看,e a i 当前主要有三种类型的集成模式: ( 1 ) 数据层集成 绕过应用逻辑,直接通过数据库的本地接口访问数据库,而不需或 很少改动应用程序。目的是实现企业中多个应用系统间的数据共享,解 决了不同数据存储之间的数据移动和共享的问题。它是目前e a i 解决方 案中最普遍的一种形式。常用的数据集成方法有:批传输、数据合并、 数据复制等“”。 ( 2 ) 应用层集成 通过应用的输入、输出来直接实现,包括直接、严格的在网络环境 中的跨平台应用程序之间的应用到应用的集成。 ( 3 ) 业务流程集成 通过集成实现信息系统商业流程的管理。 下面介绍一个基于w e bs e r v i c e s 的e a i 应用实例: 有一家电脑销售商a 和一家电脑生产商b ,b 卖电脑给a 。在过去双方通 过发送e m a i l 或传真来交换采购订单的信息,当a 需要向b 购买电脑时,通 过e m a 订或传真给b 发送订单,上面列出所有需要的电脑,b 收到订单后先 检查库存状态然后通过e m a “或传真给a 发送订单确认消息,该消息一般包 括客户需求的产品清单、要求的运送日期和价格等,当a 收到该订单确认信 息后将其存入数据库中以备日后安排采购计划。上述过程可能持续几天,效 率低下,不可靠,因为e m a i l 可能丢失。现在双方都希望上述流程尽量自动 化,使用i n t e r n e t 、b 2 b 的方式来完成销售订单的过程,这样能节省时间和 资金,也能排除可能的错误。 在该案例中,通过w e bs e r v i c e 技术实现了以下功能: 电脑生产商b 方: 西南科技大学硕士研究生学位论文第4 页 ( 1 ) 查询电脑信息的服务 以电脑名称为参数,从b 的产品数据库中查询出此类电脑信息,以 x m l 格式的s o a p 消息对它进行封装,返回给a 。 ( 2 ) 购买订单服务 接受并审核a 的订单请求消息,若订单未通过审核,则返回错误信 息:若审核通过则把订单消息传递到控制类,由控制类来处理,如:查 看被订购产品的库存量,把订单上的数据信息写入数据库,同时减少数 据库中对应产品的库存量等,处理完后在调用发送订单确认消息的w e b s e r v i c e 。 ( 3 ) 发送订单确认消息的w e bs e r v i c e 在订单被审核通过时,这个w e bs e r v i c e 用来发送订单处理结果( 封 装在s o a p 消息中) 信息给销售商。 电脑销售商a 方: ( 1 ) 查询产品信息服务的客户端 用于调用b 的查询服务,查看b 提供的产品信息。 ( 2 ) 购买订单服务的客户端 用于调用b 提供的购买订单服务,向b 下放购买订单。 ( 3 ) 接收订单确认消息的w e bs e r v i c e 负责接收b 发送来的订单确认消息,检查收到的x m l 数据流是否符 合其s c h e m a 格式的要求,将x m l 数据存入数据库。 上述案例体现了现阶段w e bs e r v i c e s 技术在e a i 、电子商务领域的一个 较典型的应用。由于d c o m 、c o r b a 和r m i 的局限性使得应用并不能任意集成, 必须考虑环境的异构问题,所以,基于w e bs e r v i c e s 技术的集成思想得到青 睐,它把不同平台、不同语言定制的应用以w e bs e r v i c e s 的形式暴露给其他 应用,实现以x m l 格式的s o a p 消息对数据进行封装,然后在分布式的异构环 境中传输,并且能够通过u d d i 实现动态的服务集成、搜索和发现。 目前,w e bs e r v i c e s 技术已经在全球启动了一拨i t 业的浪潮。各大技 术提供商都陆续地推出w e b 服务的构建工具,基于w e bs e r v i c e 的公共技术 标准x m l s o a p w s d l u d d i 或是已经成为事实行业标准,或是正在制订的进程 中,作为w e b 服务的体系架构的领导者i b m 和m i c r o s o f t 也在全球推广w e b 服务技术,我们有理由相信w e b 服务将成为将来动态商务w e b 的主流技术。 结合上述“校园信息化建设”和“w e bs e r v i c e s 在企业应用集成的应用” 这两者的研究现状,我们可以看到:近年来,各大著名高校在数字化校园建 西南科技大学硕士研究生学位论文第5 页 设方面取得了收到了一定的成效,积累了宝贵的经验,但是,由于出发点、 立场不同,从宏观角度出发的校园信息化建设考虑全面,其工作任务多且广: 电子身份、校园一卡通、数据存储、信息标准、网上办公、网上教学、数字 图书馆、虚拟实验室这些工作的开展都需要庞大的人力、财力、硬件、 软件资源支撑,建设周期往往需要数年的时间。于是,在本课题现有人力、 财力条件下,截取“信息化校园建设”中的一个子块:针对现阶段校园内部 多个信息系统之间扩展性和交互性较差、数据重复、信息不同步、资源浪费 等问题,我们期待采用一种较为轻便的解决方案。同时我们看到,现阶段在 类似问题一一e a i 领域,w e bs e r v i c e s 作为一项较新的技术在企业应用集成 领域起到了良好的效果,发展前景乐观。综合考虑后,提出了该“将w e b s e r v i c e s 技术应用于校园信息化建设”的方案,由于目前还没有一种较成熟 的校园信息平台w e b 服务架构,所以该课题有着较好的研究价值和现实意义。 1 3 课题的来源及主要研究内容 课题来源于:西南科技大学“十一五”第一批重点科研项目校园分 布式网络办公平台研究,项目编号:0 6 z x 2 1 1 1 。该项目于2 0 0 5 年1 1 月通 过四川省科学技术信息研究所科技查新,查新报告编号:a 0 5 0 儿3 0 。 主要研究内容为:以学校信息化建设为背景,结合x m l 、s o a p 、w s d l 、 u d d i 等技术在异构数据交换、信息共享等方面的技术优势和重要应用,探讨 将w e bs e r v i c e s 技术应用于校园信息化建设的方案,研究信息化校园建设中 不同平台系统之间的数据共享、信息处理等方面的重要技术及解决方法。具 体研究如何采用j s p 、s e r v l e t 、j a v a b e a n 、w e bs e r v i c e s 等技术,在现有的 学院办公系统的基础上构建一个基于私有u d d i 注册表的,能动态地描述、发 布、发现和调用服务的校园分布式信息共享平台。以x m l 技术为基础进行数 据建模,制订数据传输的标准格式;将具体应用封装为服务的形式,提供服 务描述文档;在分布式的环境中实现基于x m l 格式的s 0 a p 传输的服务请求和 响应;实现基于u d d i 的服务发布、查询。在高校内部现有的异构系统上构筑 一个通用的与平台、语言无关的技术层,进而实现各学院、部门之间各种应 用的彼此连接和集成,较好地解决数据冗余、资源孤岛等问题。 采用的思路是:充分保护现已有软件和数据资源,基于w e bs e r v i c e s 拓 展现有系统,将应用系统的功能模块划分为高内聚、弱耦合的一个个w e b 服 务,通过w e b 服务的调用来实现异构系统之间的数据信息交互,在u d d i 注册 西南科技大学硕士研究生学位论文第6 页 服务器上把服务集成起来,使校园内部各个系统能够实现高度的信息共享。 具体做以下工作: 1 从具体需求出发,采用j s p 、s e r v l e t 、j a v a b e a n 等技术设计、开发 一个b s 模式的学院信息管理系统,实现对计算机学院本地信息的维 护、管理。 2 在现有条件下搭建一个分布式环境,构建另外两个节点( 部门学院) 信息数据库,以x m l 技术为基础对数据进行建模,制订规范的x m l 数 据调用格式,并将节点的某项应用( 如:对数据的查询、添加、修改 等操作) 划分为相应的服务,用j a v a 编写类、接口文件,以服务的 形式封装后提供服务描述文件,并发布到私有u d d i 服务器上;学院 作为调用服务的客户端,实现在u d d i 注册中心查找服务,开发客户 端代码,实现和服务器端之间的基于x m l 描述的s o a p 消息通信,调 用服务并返回结果。 1 4 论文章节安排 论文分为六章。 第一章绪论。首先介绍了课题的学术背景及理论与实际意义;然后分析 了校园信息化建设、w e bs e r v i c e s 技术在企业应用集成中的研究现状;最后 介绍了课题来源及主要研究内容。 第二章相关技术基础。分析比较了现阶段主要的几种分布式对象技术; 对校园信息平台采用的w e bs e r v ic e s 技术进行了详细的分析,具体地介绍了 x m l 、s o a p 、w s d l 、u d d i 等技术的特点和优势。 第三章系统总体设计。结合上一章的技术介绍,首先分析了w e bs e r v i c e s 技术在系统中的应用;结合分布式系统理念完成系统的必要性与可行性分析、 功能模块设计、数据库设计,重点结合j 2 e e 技术分析了系统的体系结构。 第四章核心模块详细设计。首先简要介绍了基于本地的系统模块的实现。 然后重点分析了基于w e bs e r v i c e s 的远程数据维护的实现过程;分析了 j a x r p c 和j a x m 这两种服务实现方式,采用兼容j a x r p c 的a x i s 搭建开发 环境;重点介绍了校园信息平台中w e b 服务的实现和发布、发现,实现部门、 学院之间基于x m l 和s o a p 的数据交互,w s d l 对服务的描述以及基于私有u d d i 的服务的注册和查询。 第五章系统中其他关键问题的解决方案。针对系统开发过程中遇到的其 西南科技大学硕士研究生学位论文第7 页 他一些问题,如:分布式系统中资源共享、并发性、透明性等技术要求,以 及系统的安全问题等的解决方案进行了深入的分析。 第六章系统测试。在现有条件下对系统的部分功能、性能进行了测试。 最后,在结论中对整个论文主要成果的进行了总结。指出本研究内容的 成果及创新点,指出了今后在本研究方向进行进一步研究工作的展望与设想。 西南科技大学硕士研究生学位论文第8 页 2 相关技术基础 2 1 几种分布式对象技术 目前,有3 种具有代表性的主流分布式对象技术:s u n 公司的j 2 e e 技术, m i c r o s o f t 的c o m d c o m 技术和0 m g 的c 0 r b a 技术。 c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ) 公共对象请求 代理体系结构是由o m g 组织制订的一种标准的面向对象应用程序体系规范, 其核心部分是对象请求代理o r b ( 0 b j e c tr e q u e s tb r o k e r ) 。 c o m d c o m ( c o m p o n e n to b j e c tm o d e l d is t r i b u t e dc o m p o n e n to b j e c tm o d e l ) 是微软公司提出的分布式组件对象模型标准,支持在局域网、广域网甚至 i n t e r n e t 上不同计算机的对象之间的通讯。对这两种技术的详细介绍请参照 文献1 1 。 然而,c o r b a 和c 0 m d c o m 应用系统的不能实现互操作。它们构建的系统 的通信使用不同的r p c 协议,导致通信非常困难。再者,基于d c 0 m 的解决方 案必须依赖于单一的应用程序。比如说,假如运行的是d c o m 服务器程序,所 有的分布式的客户端不得不运行于微软的操作平台上。c 0 r b a 虽然可以运行 于不同的平台,但c 0 r b a 的互操作性并没有在更高层的服务上进行扩展。d c o m 和c o r b a 适合于服务器一一服务器间的通讯,但是对于客户端一一服务器的 通讯十分脆弱,尤其当客户程序分布在i n t e r n e t 上更是如此。1 。如果客户程 序和服务器之间存在防火墙或者代理服务器,那么通信将会更加困难。另外, c o r b a 非常难于开发和部署,对于不大的工程来说,用于开发c o r b a 代码所 耗费的费用和精力往往大于其带来的实惠。 与c o r b a ,c 0 m d c o m 对应的是j 2 e e ,e j b 是j 2 e e 中的基于分布式事务 处理的企业级应用程序组件。e j b 模型使用t c p i p 为底层通信协议,使用了 桩框架的机制实现客户端和服务器的通信,并不受限于只能使用j a v a 语言, 同时,e j b 服务器可以执行于任何支持j v m 的平台。然而,由于e j b 使用了 自己的数据封包格式来实现通信,作为一种功能规范的e j b 因厂商不同,其 实现也不同。因此在e j b 使用于i n t e r n e t 上时,将会出现组件模型的构架和 封装数据的标准不同的情况。所以e j b 只能局限于企业内的分布式应用,面 对超出企业范围的企业间的互动问瓢,它也不能较好地解决。 西南科技大学硕士研究生学位论文第9 页 2 2w e bs e r vic e s 技术 2 2 2w e bs e r v i c e s 的概念 w e bs e r v ic e s 是人们针对开发分布式应用程序采用的一种技术,是建立 可互操作的分布式应用程序的一种平台,同时它也为应用程序通信提供了一 种独立于平台、组建模型和编程语言的标准。i r e bs e r v i c e s 描述了一些操作 的接口,通过标准化的x m l 消息传递机制,可以通过网络访问这些操作。它 使用标准的、规范的基于x m l 的w s d l 语言描述,这一描述囊括了与服务交互 所需要的全部细节。该接口隐藏了服务实现的细节,允许通过独立于服务实 现、独立于硬件或软件平台、独立于编程语言的方式使用该服务。 2 2 3w e bs e r v i c e s 体系架构模型 w e bs e r v i c e s 的标准实现模型是:服务的提供者拥有一个可通过网络访 问的软件模块( 即w e b 服务的实现) ,它为这个模块定义服务说明,并将此说 明发布到服务注册处。服务的请求者查找服务注册处得到服务说明,利用其 中的信息与服务的提供者实现绑定,与w e b 服务交互,调用其中的操作。在 w e b 服务体系中,所有的应用实体都被抽象成服务,其中包括三种角色、三 种行为。w e bs e r v i c e s 的体系结构如图2 1 所示。 图2 1 w e bs e r v i c e s 体系架构模型 f i g 2 1t h em o d e lo fw e bs e r v i c e sa r c h i t e c t u r e 西南科技大学硕士研究生学位论文第10 页 2 2 4w e bs e r v i c e s 的关键技术 2 2 4 1x m l 可扩展标记语言( e x t e n s i b l em a r k u pl a n g u a g e ,x m l ) 是由w 3 c ( 万维网 联盟) 于1 9 9 8 年2 月发布的一种标准,它以一种开放的自我描述方式定义了 数据结构,在描述数据内容的同时突出了对结构的描述,从而体现出数据之 间的关系,这样组织的数据对于应用程序和用户是友好的、可操作的。x m l 的基本思想是:用标记表示数据的意义,而不是像h t m l 仅仅用来规定数据的 显示方式。x m l 将内容和形式相分离具有很重要的意义:那些将数据以x m l 格式编码的w e b 服务和应用程序可以迅速地以一种简单、有效的格式提供这 些数据信息,这些w e b 服务和应用程序之间也可以很容易地进行交互。x m l 突破了h t m l 的固定标记集合的约束,用户可以根据需要定义任意一种标签来 描述文档中的数据元素“。 2 2 4 2s o a p ( 1 ) 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 0 1 ,简单对象访问协议) 是在分散 或分布式环境中交换信息的简单的协议,是一个基于x 札的轻量级协议。简 单地理解s 0 a p ,就是s 0 a p = x m l + h t t p 。x m l 作为数据传送的格式;采用h t t p 作为底层通讯协议,允许服务提供者和服务消费者通过防火墙在i n t e r n e t 上进行通讯交互。详细的技术介绍请参考文献“”“”3 。 ( 2 ) s o a p 消息 一个s o a p 消息是一个x m l 文档,它包括一个必有的s 0 a p 封装,一个可 选的s o a p 头和一个必有的s 0 a p 消息体。s o a p 消息依赖于x m l 命名空间和x m l s c h e m a 定义语言。s 0 a p 消息模型如图2 2 所示。 s o a p 定义了分布式计算环境中应用软件之间相互调用的标准和传递数 据的方式,但它本身并不规定编程模型、实现方式等具体语义内容,而是通 过为传输数据提供一种标准的包装模型来统一应用语义的表达方式,这就使 得s o a p 能够被用于从消息传递到远程过程调用等各式各样的系统之中。 s o a p 使用基于文本的x m l 协议来与分布式系统进行通信;而不是像其它 分布式计算协议( 如c o r b a ,r m i 和d c o m ) 那样使用难以理解的二进制格式, 这样使得s o a p 能够很轻松地跨越各种硬件平台、操作系统和编程语言,从而 具备了高度的互操作性。s o a p 客户机可以使用h t t p 与s 0 a p 绑定向服务器发 西南科技大学硕士研究生学位论文第1 1 页 图2 2s o p 消息的封装模型 f g2 2 t h ep a c k in g 咐d e io fs 0 pm e s s a g e 送s o a p 消息,s o a p 服务器在接收到s o a p 消息之后,将该消息交给服务管理 器进行统一处理,服务管理器则通过检查服务列表,来查找在s o a p 消息中所 请求的服务。如果请求的服务并不存在,s o a p 服务器将失败信息返回给s o a p 用户机,但如果此项服务可以访问,那么相应的服务将被调用,同时控制权 将由服务管理器转交给x m l 转换程序。x m l 转换程序负责对服务调用后的结 果信息进行处理,将其转换成s o a p 用户机能够理解的s o a p 响应( 仍然是一个 x m l 文档) ,并且再次使用h t t p 绑定来传输s 0 a p 响应“。 2 2 4 3w s d l w e b 服务描述语言( w e bs e r v i c ed e s c r i p t i o nl a n g u a g e ,w s d l ) 将w e b s e r v i c e 描述定义为一组服务访问点,客户端可以通过这些服务访问点对包 含面向文档信息和面向过程调用的服务进行访问( 类似远程过程调用) 。w s d l 元素的对象结构如图2 3 所示: 其中,t y p e s 是一个数据类型定义的容器,包含了所有在m e s s a g e 部分 中需要的x m l 元素的类型定义。m e s s a g e 具体定义了在通信中使用的消息的 数据结构,包含方法参数( 输入和输出分开) 或消息文档说明。p o r t t y p e 具体 西南科技大学硕士研究生学位论文第12 页 图2 3w s d l 元素结构2 5 1 f ig 2 3 a r c h i t e c t u r eo f _ s d le l e m e n t 定义了一种服务访问入口的类型,即传入传出消息的模式及其格式。s e r v i c e 描述的是一个具体的被部署的w e bs e r v i c e 所提供的所有访问入口的部署细 节。p o r t 描述的是一个服务访问入口的部署细节,包括通过哪个w e b 地址( u r l ) 来访问,应当使用怎样的消息调用模式来访问等。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 绑定2 “。 2 2 4 4u d d l ( 1 ) u d d i 概述 统一描述、发现和集成协议( u n i v e r s a ld e s c r i p t i o n ,d is c o v e r ya n d i n t e g r a t i o n ,u d d i ) 规范定义了w e b 服务的发布与发现的方法。u d d i 的核心 是u d d i 商业注册,它使用一个x m l 文档来描述企业及其提供的w e b 服务。从 概念上来说,u d d i 商业注册所提供的信息包含三个部分:“白页( w h i t ep a g e ) ” 名称、联系信息( 姓名、电话、电话、网址等) ;“黄页( y e l l o wp a g e ) ”是商 业分类信息;“绿页( g r e e np a g e ) ”则包括了关于该企业所提供的w e b 服务的 技术信息,其形式可能是一些指向文件或是u r l 的指针,而这些文件或u r l 西南科技大学硕士研究生学位论文第13 页 是为服务发现机制服务的“。 ( 2 ) u d d i 数据模型 u d d i 注册所使用的核心信息模型是由x m ls c h e m a 所定义的,共定义了 四种主要的信息类型,分别是商业实体信息( 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 ) 和绑定信息( b i n d i n g t e m p l a t e ) 、服务调用规范的说明信 息( t m o d e l ) 。u d d i 注册信息的整体数据模型可以参阅图2 4 : 图2 4u d d i 数据模型关系1 f l g 2 4 t h er e l a t i o no fu d d id a t am o d 8 b u s i n e s s e n t i t y 元素 “b u s i n e s s e n t i t y ”,中的信息支持“黄页”分类,它的结构中包含了支 持对u d d i 商业注册的商业信息发布和发现的核心x m l 元素,如企业提供的服 西南科技大学硕士研究生学位论文第14 页 务的相关信息、企业的名称以及一些关键性的标识、可选的分类信息和联络 方法等。这个结构位于整个信息结构的最上层。 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 e n t i t y 的子结构,一个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 。 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 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 来实现。包括应用程序连接远程w e b 服 务并与之通讯所必须的信息,例如绑定标识、服务标识、接入地址等。 t m o d e l 元素 本身提供一种引用机制,它包括服务名称、发布服务的组织以及指向有 关技术规范的u r l 指针。技术规范包括信息格式、响应机制、传输协议、安 全机制等,这个引用信息可被看作是提供这项服务的公司的承诺,承诺他们 己经实现了一个与所引用的t m o d e l 相兼容的服务。这个引用信息、被嵌入到 相应的b i n d i n g t e m p l a t e 中,从而支持第三方系统利用这些调用规范来了解 技术要求和配置系统“。 ( 3 ) w s d l 到u d d i 的映射 u d d i 提供了一个发布和发现w s d l 服务描述的方法。w s d l 文档被分为两 种类型:服务接口( s e r v i c ei n t e r f a c e ) 和服务实现( s e r v i c e i m p l e e n t a t i o n ) 。其中服务接口是服务的抽象定义,用来描述某种特定类型 的服务。而服务实现则是实现一个服务接口的服务描述。当发布一个w s d l 服务描述时,其服务实现中的每个s e r v i c e 元素都被作为一个 b u s i n e s s s e r v i c e 发布。由于服务接口代表服务的可重用定义,所以它在u d d i 商业注册中心被作为一个t m o d e l 发布阻,图2 5 所示为w s d l 到u d d i 的映 射。 ( 4 ) 基于u d d i 的服务注册、发现 w e b 服务发布和发现的基础是服务描述和注册。服务注册的实现流程和 系统模型如图2 6 所示。服务提供者通过u 肋i 发布工具注册商业信息、服务 信息和服务的u r l 等,然后服务消费者通过u d d i 发现工具,查询商业、服务、 服务u r l 信息而获得相关的元数据,最后服务消费者通过与服务供应者绑定, 西南科技大学硕士研究生学位论文第15 页 圈2 5w s d l 到u d d l 的映射 f i g 2 5 t h em a p p in go fw s d lt ou d d 实现服务交互和会话,最终运行服务而满足用户的需求。w e b 服务是机器与 机器之间或程序与程序之间的交互,而不仅仅是人机交互。 图2 6 基于u d d i 的服务注册、发现 f i g 2 6 s e r v ic er e g is t r a t i o na n dd is c o v e r yb a s e do nu d d 西南科技大学硕士研究生学位论文第16 页 2 3 本章小结 通过对现有主要的分布式技术解决方案和实现技术的分析,我们可以看 到,虽然传统的中间件技术( 如:c o r b a ,d c o m ,e j b 等) 的发展己经非常成 熟,在一些领域内取得了广泛的应用,但是,也存在着以下几方面的问题: 对系统同构性的要求较高,穿越防火墙的问题,以及不同的组件对象模型之 间的互操作问题等。 s o a p w e bs e r v i c e s 的提出解决了传统中间件技术的这些问题,它使得 处于不同平台,采用不同对象技术的c o r b a ,d c o m ,e j b 构架能够统一在 s o a p w e bs e r v i c e s 技术层面之上。s o a p w e bs e r v i c e s

温馨提示

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

评论

0/150

提交评论