(教育技术学专业论文)网络教学系统面向服务架构的迁移研究与实现.pdf_第1页
(教育技术学专业论文)网络教学系统面向服务架构的迁移研究与实现.pdf_第2页
(教育技术学专业论文)网络教学系统面向服务架构的迁移研究与实现.pdf_第3页
(教育技术学专业论文)网络教学系统面向服务架构的迁移研究与实现.pdf_第4页
(教育技术学专业论文)网络教学系统面向服务架构的迁移研究与实现.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(教育技术学专业论文)网络教学系统面向服务架构的迁移研究与实现.pdf.pdf 免费下载

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

文档简介

北京邮电大学硕士论文网络教学系统面向服务架构的迁移研究与实现 网络教学系统面向服务架构的迁移研究与实现 摘要 伴随着i t 行业的快速发展,网络教育在中国快速地开展起来, 网络教学平台的数量与日俱增,伴随而来的还有快速增长和不断变化 的需求。不可避免会出现旧软件系统由于不能适应需求的增长和变化 面临被废弃的处境。面向服务架构( s o a ) 为这样的难题提供了解决方 案。s o a 作为软件业一个主要的发展趋势,解决上述问题已经初见 成效。因此如何将现有的系统改造成为基于s o a 的系统就显得十分 重要。 本文介绍了面向服务架构概念的由来、发展及前景,指出了研究 的目的和意义。然后分析和比较了当前面向服务架构的流行的实现方 法和相关技术;研究国内外成熟的面向服务架构的产品;分析和比较 了国外先进远程教学系统的设计规范和模型;以笔者参与的由北京邮 电大学网络教育研究所承担的“十五 国家科技攻关课题“基于国产 基础软件的b s 架构多媒体系统 为依托,通过分析与研究,重新设 计并细化了该系统的服务。最后作为应用实例,笔者采用了s o a 主 流实现技术1 e bs e r v i c e 实现了该系统中的问题库同步服务。此 外,单点登录( s s o ) 功能是实现s o a 的必要条件,本文对单点登录的 各种实现方式进行比较,最后提出了一种简化的s s o ,并阐述实现过 程。 关键词:网络教学系统、s o a 、集成、w e b 服务、单点登录。 北京邮电人学硕:t :论文网络教学系统面向服务架构的迁移研究与实现 r e s e a r c ha n di m p l e m e n to f m i g r p 汀i n g0 n u n el e a r n i n g s y s t e mb a s e d0 ns o a a b s t r a c t f o l l o w i n g t h e f a s t s t e p p i n g i t i n d u s t r y , c y b e r e d u c a t i o ni s a c c e l e r a t i n gi t se x p a n s i o n m o r ea n dm o r eo n l i n el e a r n i n gs y s t e m sa r e b u i l to ne v e rg r o w i n ga n dc h a n g i n gd e m a n d b u to n c ea no n l i n es y s t e mi s b u i l t ,i tc a nh a r d l ym e e tt h en e wd e m a n d t h e r e f o r e ,m a n yo l ds y s t e m s a r ef a c i n gt h ef a c t st h a tt h e yw i l lb eo u to fu s e 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 ) m a yp r o v i d eag o o ds o l u t i o nf o rt h i sa w k w a r ds i t u a t i o i n s o a ,r e g a r d e da sam a j o rt r e n di ns o f t w a r ei n d u s t r y , h a sa c h i e v e di n i t i a l s u c c e s s t h u si tb e c o m e sv e r yi m p o r t a n tt h a th o wt om i g r a t eo l ds y s t e m s t ot h es o a b a s e da p p l i c a t i o ns y s t e m t h i sp a p e ri n t r o d u c e st h eh i s t o r ya n dp r o s p e c t so fs o a , a n dp o i n t s o u tt h ep u r p o s ea n ds i g n i f i c a n c eo ft h es t u d y t h i sp a p e rw i l li n c l u d et h e s t u d yo fm a t u r ea p p l i c a t i o no fs o a a n dt h et e c h n o l o g i e sr e l a t e da n da l s o a n a l y s et h er e l e v a n ts p e c i f i c a t i o na b o u tt h ee - l e a m i n gs y s t e m b a s eo n t h ep r o j e c to f b sm u l t i m e d i at e a c h i n gs y s t e mb a s e do nh o m e m a d e s o f t w a r e o f “1 0 t hf i v e - y e a r ”p l a n ,t h i sp a p e rr e d e s i g n e da n ds u b d i v i d e d s e r v i c ei t e m sf o rf u t u r es e r v i c e o r i e n t e dm o d i f i c a t i o n w e bs e r v i c e ,a s t h em o s tp o p u l a ri m p l e m e n t a t i o nt e c h n o l o g yo fs o a ,w i l lb ea p p l i e dt o p a c kas e r v i c ei nt h em u l t i m e d i at e a c h i n gs y s t e ma sa ne x a m p l et of u l f i l l t h es o a s t r a t e g i e s s s o ( s i n g l es i g n - o n ) ,a sa ni n d i s p e n s a b l ep a r to f s o a w i l lb es t u d i e da n dd i s c u s s e d t h e nt h i sp a p e rw i l lc o m eu pw i t ha s i m p l i f i e dv e r s i o no fs s oa n di m p l e m e n t a t i o nd e t a i l si nt h ee n d k e yw o r d s :n e t w o r ke d u c a t i o ns y s t e m ,s o a , i n t e g r a t i o n ,s s o , 腑bs e r v i c e 。 i i 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名: 姻丝 同期: 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围,适用本授权书。 本人签名:谢祆日期: 导师签名:吻誓 嘿毋,多、矽, 北京邮电人学硕士论文i 旬4 络教学系统面向服务架构的迁移研究与实现 第一章绪论弟一早三百化 1 1 研究背景与需求分析 1 1 1 网络教学系统现状 随着以多媒体技术、异步传输技术、网络技术、移动通信技术等为代表的信 息技术高速发展,给现代教育的发展提供了巨大的动力,在为远程教育提供了多 样的工具与更丰富的信息资源的同时,也对教学手段和教学模式产生了巨大的影 响。近年来国内外多所院校都大力发展自己的网络教学系统以适应新环境下的教 学需求。由于各个教学系统设计时的教学需求不同,这些网络教学系统各有侧重。 比如中国人民大学的“网上人大”平台。它是我国第一所采用互联网教学的 网上大学。该平台由资源建设、教学、管理、校园文化建设四个子平台组成,其 中管理平台功能强大,涵盖了题库管理系统、教学服务中心管理系统、论文管理 系统、学籍管理系统、教务管理系统、学费管理系统等若干子系统,几乎包括了 人大教学与教务管理的各个方面。清华大学的教育信息化方面经过十余年的努 力,也取得了较大的进展。清华大学网络教学平台在多年实践中得到完善,这个 平台由六个子系统组成:多媒体课件制作系统、主从式多媒体网络教学系统、网 络辅助教学系统、c o d 课件点播系统、网络考试系统、网络教学运行管理系统。 其中主从式多媒体网络教学系统可以同时转播教师影像和教师讲义,授课现场可 实时课件化存档,以供重播使用。可以使教师和远程教室的学生通过音视频方式 和电子白板进行交流,实时讲座过程中观众可通过文字的方式与发言人进行交互 式问答。北京邮电大学网络教育学院作为中国最早开展远程教育的学院之一,目 前已经有很多优秀的教学和教务平台。比如多媒体网络教学系统、研究生管理平 台、网络教育研究所办公系统、网络虚拟实验系统、练习与模拟考试系统等等。 其他院校也有着优秀的有特点的网络教学系统,在这里就不一一列举了。 通过比较这些教学系统,不难发现各高校的网络教学系统虽然各有特点但都 存在着功能重复建设的现象,比如教务管理功能,课件点播功能,考试功能,等 等。此外,当需要将新系统与原有系统整合、需要为额外的用户群提供访问界面、 北京邮电大学硕士论文网络教学系统面向服务架构的迁移研究与实现 需要在原有基础上为用户提供新的增值服务时,这些工作不得不从最初的系统设 计开始做起。由于各高校对的系统设计有着不同要求,每个系统都有其自己特有 的架构,实现技术也有所不同,这样使得我们在部署、修改和维护这些系统时付 出很高的代价。如何才能尽量减少功能重复建设,让系统可以灵活的调整功能适 应新的需求,降低开发和维护的成本,等问题就成为值得研究的课题。 1 1 2 解决方案 解决原有系统功能重用,新旧系统整合这样的问题时,人们首先会想到企业 应用集成e a i ( 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 ) 。e ai 是企业利益最大化的工具, 其目标就是要将企业的各种信息系统集成在一起,这一过程应尽可能不对已有的 应用程序做出过多的修改,并实现数据共享和业务流程的集成。避免由于新旧系 统不能很好地融合,导致旧系统功能部分或全部被抛弃的情况发生。 b 蛆相关的主要技术分析: 1 ) 通用对象请求代理结构c o r b a 。c o r b a 的最初目的就是能够使不同 的编程语言、操作系统和软件平台之间实现协同工作。而且,发展到今天, c o r b a 2 已经完全基于面向对象技术,c o r b a 3 则是朗着基于组件的方向发展。 适用于需要集成的两个企业应用软件互为异构,或者由不同的编程语言实现,比 如j a v a 与c + + 。 优点:以一种中间件的方式使不同编程语言提供协同工作;对操作系统没有 特殊要求和依赖,仅取决于实现商,但实现商可以选择;有效长且成熟的发展历 史,与当今流行的应用系统在体系结构上关系密切。 缺点:具体的性能与所选实现商的实现有关,中问件的一些服务成为发展的 瓶颈;一般情况下需要修改源代码来实现对旧有应用软件的包装;c o r b a 是收 费软件,价格也会成为企业考虑的重要因素。 2 ) j a v a 2 平台企业版j 2 e e 。j 2 e e 在企业应用系统开发中扮演了一个重要的 角色。在j 2 e e 下开发业务逻辑或中l 、日j 层组件的最重要的技术就是e j b ,它提供 了对主要的企业技术如事务、安全性以及持续性的支持。 优点:基于规范的平台,不受限于特定的操作系统或硬件平台,有很多实现 商可以选择;提供组件体系结构,简化了复杂的组件开发;并以声明和编辑方式 对这些服务提供支持。相对成熟,支持大量中间件技术,能够为e a i 提供满意 的性能及可升级性。 缺点:受限于j a v a 编程语言,尽管可通过其他中间件技术( 如c o r b a ) 支 持;不同的实现商之间的可移值性还不高;与n e t 等绑定操作系统或平台的技 术相比,性能还需提高,且占用操作系统资源较多。 2 北京邮电人学硕士论文网络教学系统面向服务架构的辽移研究与实现 3 ) 分布式组件对象模型d c o m 。d c o m 扩充了在网络中通过c o m 支持的 对象,并允许c o m 应用软件分布在局域网中的多个计算机上。d c o m 通过网络 协议定义过程中的通信。在运行时,c o m 为客户程序和使用r p c 的组件提供服 务,而且遵循d c o m 协议标准。 优点:在w i n d o w s 平台上提供基于c o m 体系结构的分布式处理;在w i n d o w s 平台上使用能够达到较为满意的性能要求。 缺点:在跨平台使用中存在困难,对非w i n d o w s 平台支持较差,且性能无 法得到保障。 4 ) 消息中间件m o m i 引。企业消息传递使得应用程序能够跨多平台进行可靠 的传输。通过使用可靠的消息队列,提供支持消息传递所需的目录、安全和管理 服务,m o m 确保验证过的应用之间消息传送的安全,它通常提供同步和异步的 传输模式。在企业内部保证可靠的传输最通用的方法就是使用消息传递系统。 c o r b a 和j 2 e e 目前就支持m o m 的工业标准接口。 优点:为不同的企业应用系统提供了跨多平台的消息传输;除支持同步传输 模式外,还支持异步传输,有助于在应用问可靠地进行消息传输。 缺点:与其他中间件技术一样,回合制的消息模式下高流量的性能存在瓶颈 问题。 实践证明,e a i 方案,以及为单个i t 应用而设计的独立解决方案,虽然能 有效解决系统集成,旧系统重用等问题。但是对于一些基本的业务需求,比如降 低成本、缩短开发周期、跨企业集成、企业到企业( b 2 b ) 和企业到顾客( b 2 c ) 集成等等都不能有效解决。 因此专家与技术人员都在寻找更好的解决方案。在很多情况下,问题源于缺 乏一个一致的体系架构,在这种体系架构中,可以快速地开发、集成和重用应用 程序。更重要的是,我们需要一个这样的体系架构,它能够装配组件和服务,以 便快速甚至动态地交付应用程序,应对需求变化。因此,面向服务体系架构 ( s 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 ,s o a ) 的提出不是偶然的。 s o a 是种软件架构模型,使得驻留在网络上的软件能够被发布( p u b l i s h ) , 发现( f i n d ) 和调用( i n v o k e ) 【3 1 。s o a 的软件开发人员可以将服务以组件的形式发布 在网络上,使得任何以服务为组件的应用程序都可以与其它的同样基于服务的应 用程序交互。它允许不同应用相互交换数据、参与业务流程( b u s i n e s sp r o c e s s e s ) , 无论它们各自使用的是何种操作系统或编程语言。s o a 也可被看作是一种构建 l t 系统的方案,它将业务服务作为协调i t 系统与业务需求的关键组织原则。其 业务流程是由一系列业务服务组成的,可以更轻松地创建、修改和管理它来满足 不同时期的需要,而且具有很好的灵活性和快速响应能力,这对解决原有系统体 3 北京邮电大学硕士论文网络教学系统面向服务架构的迁移研究与实现 系架构局限性非常重要。同时w e bs e r v i c e 作为s o a 的主流实现方式,在多年的 实践应用过程中,其核心技术规范如s o a p 、w s d l 、u d d i 等都已趋于成熟, 而且它是基于一系列公开标准的,能提供跨平台、穿越防火墙的访问能力。 综上所述,面向服务架构将是我们实现新旧网络教学系统整合和功能重用的 首要选择。要从根本上解决旧系统中存在的问题,就必须从底层入手,重新构建 系统应用的体系架构,即构建出适应未来发展的基于w e bs e r v i c e 的s o a 系统。 1 1 3当前的现实需求和研究方向 短短几年s o a 已经从一个概念,迅速发展成为软件行业发展的主要趋势, 成为了业界的投资重点。因而,我们开发自己的应用时,构建出适应未来发展需 要的s o a 系统,可以未雨绸缪,为未来做好充分的准备。对目前的旧系统而言, 虽然存在着不够灵活、维护费用高、不容易与其他的系统集成等等问题,但它通 常都具有很高的使用价值,已经成为整个教学过程中可以信赖的组成部分;同时, 较大的系统替换方案风险大,开销大。因而,替换方案只有原来的系统不再能够 满足业务需求时才能采纳。所以通常采用的方法是增量式i t 基础设施更改1 4 j , 这种方式风险小,几乎不会造成应用中断,而技能和应用程序结构方面的更改也 可以通过增量方式完成。因而,抛弃原有系统是不可取的,我们必须对其进行重 新利用。为了能够满足重用原有系统来进行渐进式开发新的s o a 系统,丌发者 常常将s o a 支持作为增量更改过程的一部分进行规划,并将现有系统的功能模 块封装成w e bs e r v i c e 作为构件来集成新系统,从而将原有系统迁移到s o a 系统 中来,以达到改造旧系统重用的目的。 从战略上讲,丌发者的目标是构建一个新的体系架构适应未来的发展的需 要,从战术上讲,必须重用原有系统,充分利用已有资源,以便随着时问的推移, 可以在可管理、渐进式项目中分化或取代它们。因此,如何很好地将现有原有系 统的应用功能封装成w e bs e r v i c e 以迁移到s o a 系统中来,就成为目前研究的重 要课题。本文将重点就这一方向展开研究。 1 1 4国内外研究的现状 w e bs e r v i c e 和s o a 架构作为一种新的信息技术和新的体系架构模式,已成 为近年来国内外学术界研究和讨论的热点。在经历了数年的研究和实践之后, s o a 和w e bs e r v i c e 的相关技术得到了长足发展,标准和规范日趋成熟,并得到 了国外主流软件厂商和企业客户的认可。i b m 、m i c r o s o f t 、s u n 、b e a 等主流软 件厂商已经陆续推出各自的s o a 策略、架构以及产品。目前,越来越多的企业 4 北京邮电人学硕上论文网络教学系统面向服务架构的迁移研究与实现 开始将其r r 架构转向s o a 。美国i n f o w o d d 于2 0 0 6 年初所做的调查显示,半数 以上的企业都在计划部署s o a 。其中,1 3 的企业已经开始实施试验性质的s o a 部署;8 的企业实现了企业范围内的s o a ;有1 4 的企业把s o a 作为其一年 内第一优先级的大事,而把s o a 作为未来三年内第一优先级的企业则激增至 3 0 。在国内,s o a 同样是企业关注的焦点,并且有些企业已经开始实施自己的 s o a 整合规划。如中远国际、山东地税等中国客户借助i b m 的s o a 解决方案 完成了自己的s o a 整合。 同时,在构建基于w e bs e r v i c e 的s o a 系统时,如何用w e bs e r v i c e 封装原 有系统也成为很多公司和机构研究的方向。加拿大w a t e r l o o 大学电子与计算机 工程系做的以w e b 为中心的企业原有系统集成研究,采用c o r b a 封装从原有 系统中剥离出来的功能模块,然后利用一个中间层把c o r b a 对象请求封装成 s o a p 信息。国内也有很多学校在做基于w e bs e r v i c e 的研究,其中有一些与原 有系统有关,例如清华大学自动化系开发了一个基于w e bs e r v i c e 的企业应用集 成系统,它利用代理服务器作为应用服务器和原有应用之间的中问件1 4 j 。目前这 方面的研究大都是从体系架构、设计模式以及技术规范等理论上进行的。涉及到 实际设计和开发的应用类文献较少。 s o a 的发展速度比较快,并且衍生出了几个分支,但无论如何发展s o a 都 必须单点登录( s s o :s i n g l es i g no n ) 功能,凶是实现p o r t a l 的关键。所以单点登录 的设计也是s o a 方案中必不可少的重要部分。目前实现单点功能的专业软件虽 然功能全面,但是部署和维护都很复杂,使用不方便。对于只拥有几个教学系统 的企业束或学校来说,简单部署,易维护的单点登录功能才是最实用的。 1 2课题研究的目的和意义 本课题的研究目的是合理而有效地利用现有资源,在花费较低费用、对系统 不进行大的改动并保持系统持续可用的情况下,将现有的网络教学系统构建成为 一个可用的、灵活的基于w e bs e r v i c e 的s o a 型系统。 将s o a 设计理念应用于网络教学系统,能够帮助我们更迅速、更可靠、更 具重用性地架设整个教学系统,使我们能灵活应对未来的需求变化,并且可以降 低开发成本,缩短开发时间。对未来的教学系统的开发和设计具有参考价值和现 实意义。 1 3论文研究内容和相关工作 本文研究和分析了s o a 的成熟产品s a k a i ,比较和总结了国外关于教学系统设 计的相关规范与模型。结合作者自身的研究与实践,对网络教学平台的发展结构 5 北京邮电人学硕上论文网络教学系统面向服务架构的迁移研究与实现 与功能、平台设计进行了研究和分析。在对现有的网络教学系统进行了面向服务 分析后,通过服务建模对其中的网络答疑模块进行了面向服务设计和细化,并应 用w e bs e r v i c e 技术创建服务,为现有系统的面向服务迁移改造做出了示范。单点 登录功能也是本文研究的内容之一,它是实现面向服务架构的必要条件,在面向 服务的架构中,服务和服务之间,程序和程序之问的通讯大量存在,服务之间的 安全认证是s o a 应用的难点之一,实现单点登录功能可以简化s o a 的安全问题, 提高服务之间的合作效率。 相关工作: 1 ) 对当前网络教学系统体系架构面临的问题进行了研究,分析了网络教学 系统架构的新需求,指出了本论文研究意义。 2 ) 研究分析当前s o a 的主流实现方式;对s o a 成熟产品s a k a i 的进行了 研究。 3 ) 研究国内外先进的教学系统设计规范和模型,总结其共性和特点;采用 面向服务分析方法对特定的网络教学系统进行了分析,和服务建模。 4 ) 以创建问题库同步服务为应用实例,阐述了基于面向服务架构迁移实现 过程。 5 ) 分析比较当前单点登录的实现方法,设计和实现不受浏览器c o o k i e 设置 限制的单点登录功能。 6 北京邮电大学硕士论文网络教学系统面向服务架构的迁移研究与实现 2 1s o a 简介 第二章s o a 及其主要实现方式 2 1 1为何使用s o a 随着信息技术的发展,面向事务处理的信息系统框架已经不能适应多变的市 场环境,在原有系统框架下的企业面临着诸多问题,对其归纳后有以下几点: 互操作性。任何w e bs e r v i c e 都可以与其它w e bs e r v i c e 进行交互。w e b s e r v i c e 以s o a p 消息方式通信。使得开发者可以使用任何语言来编写w e b s e r v i c e ,开发者无需更改他们的开发环境就可建立和使用w e bs e r v i c e 。满足s o a 跨平台的要求。 有限的预算。原有的系统不能弃置,企业需要花大量的人力和财力去维 护已有系统。同时新系统的设计要兼顾到将来可能发生变化的需求,这对系统设 计要求很高。 业务的发展要求对相对独立的模块进行整合。对于异构体系,或者一些 超前结构的系统,将它们整合在传统的紧耦合式的系统上,是非常困难的。 软件版本更新过快。除了投入额外成本去开发新版本软件之外,维护成 本也随之加大。 已有系统的运转要求系统对外部丌放甚至需要其他企业参与。一个传统 的企业级应用常常是对内的,也就是说在企业的内部网使用,但是如今很多大公 司,如跨国企业在世界各地设立自己的分公司,这就要求企业将自己的应用发布 到网络上,或者应用其他企业发布的服务。这为w e b 服务的发展提供强大的支 持。 针对上述问题,专家们提出了一个解决方案,即企业应用集成。通常情况下 企业应用集成方案分为两种内部集成与外部集成。内部集成就是用改变程序 运行环境,或者直接改写程序代码的方法来实现整合的目的。内部集成有很多缺 点,比如工作量大,改动的层面广,并且多次改动使系统难以维护和升级,很不 利于开发维护人员理解各个模块或者子系统的功能。由于企业级应用常常是使用 分布式的业务逻辑,因此研究人员提出可以使用通用的网络协议、通用的标准对 7 北京邮电人学硕士论文 网络教学系统面向服务架构的迁移研究与实现 企业级应用进行集成,这便是外部集成方式。 外部集成方式从简单的针对竖井式企业应用的纵向集成( v e r t i c a l i n t e g r a t i o n ) ,发展到了面向服务的集成( s e r v i c eo r i e n t e di n t e g r a t i o n ) 方式。纵向集 成的含义是将原来的竖井式的应用原封不动的封装起来,这么做虽然实现了一定 程度的代码级别的重用,但是新的应用程序不能直接使用旧的已有的功能。因此 后来在纵向集成的基础上做了某些改进,提出了横向集成( h o r i z o m a lh a t e g r a t i o n ) 的概念。横向集成是抽出了一部分模块的功能作为应用接口,一定意义上实现了 功能重用,但同时也牺牲了功能模块的独立性,因此在整合系统时又产生了新的 矛盾。面向服务的集成是将系统的功能封装成服务,以提供给使用者安全并且稳 定的访问方式,使用者不需要了解服务的具体实现方式。这种方式不但对于已有 的异构的系统便于集成,而且对于将来新开发的系统也能兼容,是目前较完善的 解决方案。 2 1 2s o a 的基本概念 s o a 即面向服务架构( s e r v i c eo r i e n t e d a r c h i t e c t u r e ) 的英文缩写。1 9 9 6 年 由国际著名的i t 咨询机构g a r n t e r 首次提出,但是直到最近几年才在全世界范 围内发展和应用。 s o a 架构提供了一种标准的编程模型,使得驻留在网络上的软件能够被发 布( p u b l i s h ) ,发现( f i n d ) 和调用( i n v o k e ) 【5 】。s o a 的软件开发人员可以将服务以组 件的形式发布在网络上,使得任何以服务为组件的应用程序都可以与其它的同样 基于服务的应用程序交互。 面向服务的体系架构中主要包括三个主体角色:服务请求者、服务注册者和 服务提供者,如图2 - 1 所示。 图2 - 1s o a 角色关系图 ( 1 ) 服务请求者 完成服务的查找与调用。它首先到服务注册者去查找满足特定条件的、可用 8 北京邮电人学硕士论文网络教学系统面向服务架构的迁移研究与实现 的服务,一旦找到,服务请求者将绑定到服务提供者并进行实际的服务调用。 ( 2 ) 服务注册者 集中存储服务信息,方便服务请求者查找服务。同时为服务提供者提供一个 发布服务信息的平台。服务注册者实际起到了中介的作用。 对服务请求者来说,绑定服务信息的方式有两种:静态绑定和动态绑定。静 态绑定是在开发应用程序的时候查询相关的服务信息,并得到服务的接口信息。 在这种方式下,服务注册者是不是必要的,因为服务请求者不一定要从服务注册 者处获得服务提供者的访问位置,还有很多其它的方式同样可以直接获得服务提 供者的信息,比如f r p 、u r l 、e m a i l 等方式;动态绑定是指服务请求者在运行 过程中从服务注册者处获得服务信息并动态调用相关功能的过程。尽管静态和动 态的服务发现界面都会提供有关站点上的w e bs e r v i c e 信息,但是它们不会向其 他开发人员告知它们的存在。如果开发人员不知道有这样的服务存在,那么他们 就不可能使用服务。通过使用u d d i 对服务进行注册可以让更多的潜在用户获得 服务信息。 ( 3 ) 服务提供者 通常情况下,服务提供者就是服务的拥有者,它负责将服务信息发布到服务 注册中心,同时要控制对服务的访问、执行以及服务的维护和升级。 “面向服务”的概念已经存在了一段时问,并且根据目标的不同而有着不同 的语义理解,不变的是它代表了分离关注点的不同的方法。这意味着如果一个 大问题能够分解成为更小的,相关的片段集合,那么他就更容易构造,实现和管 理。每一个片段都代表了一个关注点或者一个特定的部分。 2 1 3s o a 特征、优点 面向服务架构具备如下几个基本特征: ( 1 ) 服务对外部开放。外部用户如业务伙伴可以像企业内部用户一样访问 相同的服务。业务伙伴可以采用w e b 服务方式或者先进的b 2 b 协议( e b x m l 或r o s e t t a n e t ) 相互合作,交换业务信息,完成特定业务流程。 ( 2 ) 随时响应。当有出现服务请求时,必须有服务提供者做出服务响应。 面向服务架构应该能够为p o r t a l 之类的同步应用和电子商务系统之类的异步应用 提供服务。但是同步应用对服务有很强的依赖性,容易受到服务提供者短缺的影 响。相比之下异步应用更稳健,因为其采用队列请求设计,可以容许出现服务提 供者短缺或迟滞的情况。用户不容易察觉到短暂的短缺。 在多数情况下,异步应用可以达到同步应用一样的效果,而且更能够体现 s o a 的最佳特性,并且确保系统在不同负荷下的伸缩性。 9 北京邮电人学硕l 论文网络教学系统面向服务架构的迁移研究与实现 ( 3 ) 粗粒度的服务接口。粗粒度服务提供一项特定的业务功能,细粒度服务 代表了技术组件方法。粗粒度服务可以降低服务请求者和服务提供者之间的数据 传输往复次数,并且它的传输方式以低频度的大量文本数据传输为特点。较短的 传输时间和较低的传输往复率提高了数据可靠性和传输成功率。相比之下以往有 保障的t c p i p 会话连接成本过高。因此粗粒度服务优势明显。 ( 4 ) 粒度分级。粗粒度服务倾向于解决专门的业务问题,同时必然会有服务 的重用性差的缺点。而细粒度服务倾向于解决相同的业务问题,重用性较高。解 决这一矛盾的方法之一是服务粒度等级化来创建服务。 ( 5 ) 松散耦合。s o a 又一个区别于大多数其他组件框架的特点是,他的组件 服务是“松散耦合”的。“松散耦合 使得服务的使用者与提供者在服务的实现 和服务被如何使用方面隔离开来。服务的接口成为了独立于服务实现的单独实 体,使得服务提供者修改服务实现时可以不对服务使用者造成任何影响。 ( 6 ) 可重用的服务及服务接v i 设计。可重用的服务设计原则可以使得应用 更具灵活性。采用通用格式提供业务功能可以使得开发人员缩短开发时间。重用 服务设计像数据库设计或数据建模一样都是最有价值的工作。服务设计管理从本 质上讲是服务设计问题,服务设计需要在项目短期战术与企业构建可重用服务长 期目标之间选择折中点。还应当为接口和服务实现文档以及其他的非功能性特征 建立标准。 ( 7 ) 标准化的接e l 。随着x m l 和w r e b 服务的功能不断更新与完善,s o a 被 推向了更高的层面,同时使得s o a 在企业中的应用更为广泛。w e b 服务使应用 功能得以通过标准化接口( w s d l ) 提供,并可基于标准化传输方式( h 1 瞪和 j m s ) ,采用标准化协议( s o a p ) 进行调用。而采用x m l ,开发人员无须了解 特定的数据表示格式,便能够在这些应用间轻松地交换数据。虽然也可以不采用 w e b 服务或x m l 来创建s o a 应用,但是这两种标准的非常重要、应用同趋普 遍。未来大多数的服务使用者都会将其作为企业的服务访问方法。 ( 8 ) 支持各种消息模式。在s o a 实现中常常会出现混合式的消息模式的服 纠6 j ,消息模式大致分为这几类。 无状态的消息。使用者向提供者发送的每条消息都必须包含提供者处理 该消息所需的全部信息。这一规定使服务提供者无须存储使用者的状态 信息,从而更易扩展。 有状态的消息。使用者与提供者共享使用者的特定环境信息,此信息包 含在提供者和使用者交换的消息中。这一限定使提供者与使用者间的通 信更加灵活,但由于服务提供者必须存储每个使用者的共享环境信息, 因此其整体可扩展性明显减弱。该限定增强了服务提供者和使用者的耦 1 0 托京邮电大学硕士论文网络教学系统面向服务架构的迁移研究与实现 合关系,提高了交换服务提供者的服务难度。 等幂消息。向软件代理发送多次重复消息的效果和发送单条消息相同。 这一限定使提供者和消费者能够在出现故障时简单的复制消息,从而改 进服务可靠性。 ( 9 ) 精确定义的服务接1 2 1 。服务接口是由提供者和使用者之间的契约定义 的。它规定了服务使用方法及使用者期望得到的结果。除此之外,还可以在契约 中规定服务质量。m e t a 将s o a 定义为:“一种以通用为目的、可扩展、具有联 合协作性的架构,所有流程都被定义为服务,服务通过基于类封装的服务接口委 托给服务提供者,服务接口根据可扩展标识符、格式和协议单独描述。”该定义 的最后部分表明在服务接口和其实现之间有明确的分界。 s o a 的优点: ( 1 ) 编码灵活性。可基于模块化的低层服务、采用不同组合方式创建高层服 务,从而实现重用,这些都体现了编码的灵活性。此外,由于服务使用者不直接 访问服务提供者,这种服务实现方式本身也可以灵活使用。 ( 2 ) 支持多种客户类型。借助精确定义的服务接口和对x m l 、w e b 服务标 准的支持,s o a 可以支持多种客户类型,包括p d a 、手机等新型访问渠道。 ( 3 ) 更易维护。服务提供者和服务使用者的松散耦合关系及对丌放标准的采 用确保了该特性的实现。 ( 4 ) 更好的伸缩性。依靠服务设计、开发和部署所采用的架构模型实现伸缩 性。服务提供者可以彼此独立调整,以满足服务需求。 ( 5 ) 更高的可用性。该特性在服务提供者和服务使用者的松散耦合关系上得 以体现。使用者无须了解提供者的实现细节,这样服务提供者就可以在类似w e b l o g i c 这样的集群环境中灵活部署。 s o a 可以看作是b s 模型、x m u w e bs e r v i c e 技术之后的自然延伸。s o a 将能够帮助人们站在一个新的高度理解企业级架构中的各种组件的开发、部署形 式,它将帮助企业系统架构者以更迅速、更可靠、更具重用性架构整个业务系统。 较之以往,以s o a 架构的系统能够更加从容地面对业务的急剧变化。 2 2s o a 主要实现方式 目前w e bs e r v i c e 被业界公认为是最好的s o a 实现方法,理由如下: 互操作性。任何w e bs e r v i c e 都可以与其它w e bs e r v i c e 进行交互。s o a p 是所有主要供应商( 以及大多数中小供应商) 都支持的标准协议,它避免了在 c o r b a 、d c o m 和其它协议之间转换的麻烦;它可以使用任何语言来编写w e b 北京邮电大学顾上论文网络教学系统面向服务架构的迁移研究与实现 s e r v i c e ,开发者无需更改他们的开发环境就可建立和使用w e bs e r v i c e 。 普遍性。w e bs e r v i c e 使用h t f p 和x m l 进行通信。因此,任何支持这 些技术的设备都可以使用和访问w e bs e r v i c e 。 低进入屏障。w e bs e r v i c e 背后的概念易于理解,并且来自i b m 和微软 这样的供应商的免费工具箱能够让开发者快速创建和部署w e bs e r v i c e 。此外, 其中的某些工具箱还可以让已有的c o m 组件和j a v a b e a n 方便地部署成为w e b s e r v i c e 。 行业支持。所有主要的供应商都支持s o a p 和w e bs e r v i c e 技术。例如, 微软的n e t 平台就可部署w e bs e r v i c e 。用v i s u a lb a s i c 编写的组件很容易作为 w e bs e r v i c e 部署,j 2 e e 平台更是如此。 2 2 1 w e b 服务技术概述 w e b 服务( w | e bs e r v i c e ) 是一个应用程序实例,它提供给使用者某种业务 服务,或者某种数据访问,并且它以托管制的模式发布这些服务。它是基于 i n t e r n e t ,分布式的技术。w e bs e r v i c e 技术体系由一组开放的、业界通用的标准 和规范构成。它建立在非常成熟的技术基础上,通过基于x m l 技术的w e b s e r v i c e 描述语言( w s d l ) 对提供的服务进行封装,然后通过统一的定义、查找 和集成协f 义( u d d i ) 在i n t e r n e t 发布该服务并且提供服务的企业和组织的相关信 息,使服务使用者或者潜在的客户可以用一些标准的方式访问。它最大优势就是 提供了跨平台的、由不同语言编写的应用程序之间交互的一系列标准。w e b s e r v i c e 的广泛应用将改变现有的电子商务模式,并促进新的交易方式的出现, 对各种企业之间的信息系统进行整合和交流提供了一种现实且方便的解决途径。 w 曲服务技术组件【9 j 是一套开放的规范,它们要么是现有的因特网标准,要么是 被广泛接受并正在通过正常步骤成为标准的规范。组件的基本部分包含h t t p 、 x m l 、s o a p 、w s d l 、u d d i 。h t l l p 协议是最底层的,也是一个被广泛运用的、 类似r p c 的简单协议,并且是对防火墙友好的。x m l 扩展标记语言以通用的方 式表示数据,它已经被广泛使用。s o a p 协议是一个基于x m l 的消息传递协议, 它对不同平台和语言都有很好的支持。它同时支持消息传递和请求响应通信模 型。s o a p 与其他类似消息传输协议一样都需要使用接口定义语言i d l ( i n t e r f a c e d e f i n i t i o nl a n g u a g e ) 。它所使用的w s d l 是一个基于x m l 的服务接1 2 定义语言, 定义了服务接口和其实现特征。除了丌放的、被广泛采用的标准外,w e b s e r v i c e 解决方案还能提供高度的互操作性和访问的安全性。 1 2 北京邮电人学硕上论文 网络教学系统面向服务架构的迁移研究与实现 2 2 2 w e b 服务的类别 综合当今的w e b 应用以及w e b 服务的特点,w e b 服务实施的领域可以分 为四类【8 】: ( 1 ) b u s i n e s s o r i e n t e dw r e bs e r v i c e :该类服务针对的是那些面向企业的应用 服务,包括企业内部的e r p 系统,企业间的s c m c r m 等系统。当这些系统以 w e b 服务的形式在网络( i n t e m e t 和i n t r a n e t ) 出现时,企业内的应用集成将变的 更为容易,而企业之间的众多合作伙伴的系统对接也将不再是无法完成的任务。 目前现有的解决方案和产品的提供商有b o w s t r e e t 、e p i c e n t r i c 等。 ( 2 ) c o n s u m e r - o r i e n t e dw e bs e r v i c e :此类服务针对的是那些原先b 2 c 类型网 站的改造,为这些b r o w s e r - o r i e n t e d 的w e b 应用增加了w e b 服务的应用界面, 使得第三方桌面工具或者自带的桌面工具能够利用更方便的用户界面提供跨越 多个b 2 c 网站的桌面服务。这将使得用户使用i n t e r n e t 更为方便,能够获得更加 便捷的服务。比如我们完全就可以在个人理财系统中集成i n t e m e t 上的股票价格 查询w e b 服务、机票预定w e b 服务等,使得个人理财应用的自动化程度大大提 高。 ( 3 ) d e v i c e o r i e n t e dw e bs e r v i c e :此类服务的使用终端一般是手持设备和日 用家电,对于前者而言,可以在不用修改网络服务的体系架构的前提下,令先前 的网络服务支持除计算机设备以外的各种终端,比如p a l m 、p o c k e t p c 、手机等。 如此,那些天气预报服务、e m a i l 服务、主动信息服务等将更为有效和便捷。而 后者对于日用家电,则可能意味着更大的市场,有了w e b 服务作为基

温馨提示

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

评论

0/150

提交评论