(计算机应用技术专业论文)基于uddi的校园soa体系研究与实现.pdf_第1页
(计算机应用技术专业论文)基于uddi的校园soa体系研究与实现.pdf_第2页
(计算机应用技术专业论文)基于uddi的校园soa体系研究与实现.pdf_第3页
(计算机应用技术专业论文)基于uddi的校园soa体系研究与实现.pdf_第4页
(计算机应用技术专业论文)基于uddi的校园soa体系研究与实现.pdf_第5页
已阅读5页,还剩56页未读, 继续免费阅读

(计算机应用技术专业论文)基于uddi的校园soa体系研究与实现.pdf.pdf 免费下载

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

文档简介

北京邮电大学硕士学位论文摘要 基于u d d i 的校园s o a 体系研究与实现 摘要 面向服务的体系结构( s o a ) 是当今r i 业内最热门的话题之一。 s o a 将功能组件通过服务之间定义好的接口联系起来,并使各个组 件可以用统一和通用的方式交互。通过使用s o a 框架,系统之间的 耦合性大大降低,从而提高了软件组件的可重用性,也大大加快了既 有系统的整合速度。在s o a 的实践过程中,w e b 服务渐渐成为s o a 最有效的实现方式。w e b 服务是由u r i 确定的应用,它的接口可以 用x m l 定义,用户可以通过网络找到w e b 服务。并且,w e b 服务可 以使用x m l 格式的消息、通过各种网络协议与其他应用直接进行交 互。w e b 服务的描述、发现和集成需要使用u d d i ,它是将w e b 服务 的提供者和使用者联系在一起的桥梁。 尽管,s o a 的热度不断升温,但是真正使用s o a ,成功实现的 系统却很难见到。原因在于,从理论到实现的过程,与理论的诞生一 样,需要不断的摸索和实践。北京邮电大学数字化校园的建设为s o a 在教育系统的实施提供了一个很好的实践机会。 本文就以该项目为基础,做了如下工作: 1 全面了解业界对s o a 的理解和各组织s o a 的具体实现技术; 2 研究了典型的s o a 体系的框架结构; 3 全面学习了典型的s o a 体系实现所需要的主要技术; 4 重点研究了s o a 体系中的服务注册技术及其最新标准; 5 针对北京邮电大学校园信息化建设的实际情况,提出了使用s o a 体系实现数字化校园的总体框架; 6 应用最新的u d d i v 3 o 2 标准,设计并实现了北京邮电大学w e b 服务注册中心; 7 设计并实现了数字化校园系统中w e b 服务与u d d i 的典型应用环 境; 8 研究了部分w e b 服务最新发展方向与技术。 关键字:s o au d d iw e b 服务j a v a 北京邮电大学硕士学位论文 r b 峪e r c ha n di m p l e m e n 瑚i o n o fs o ai nt h ec a m p u sb a s e do nu d d i n o w a d a y s ,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 ) i so n eo f t h e h o t t e s t t o p i c s i ni ti n d u s t r y s o am a k e sf u n c t i o n c o m p o n e n t sl i n k t o g e t h e rt h r o u g hd e f i n e da l r e a d yi n t e r f a c e sb e t w e e ns e r v i c e s ,a n dm a k e s e a c hc o m p o n e n ti n t e r a c tw i t hu n i f o r ma n du n i v e r s a lm o d e i tr e d u c e s c o u p l i n gb e t w e e ns y s t e m su s i n gs o a f r a m e w o r k , s ot h a tr e u s a b i l i 哆o f s o f t w a r ec o m p o n e n t si se n h a n c e d ,a n dq u i c ki n t e g r a t i o no fe x i s t e n t s y s t e m si se a s i e r w r c bs e r v i c eh a sg r a d u a l l yb e c o m et h em o s te f f i c i e n t i m p l e m e n t a t i o nm o d e o fs o ai nt h ec o u r s eo fd e v e l o p m e n to fs o a w r e b s e r v i c ei sa l la p p l i c a t i o nc o n f i r m e db yu r i i t si n t e r f a c ec a nb ed e s c r i b e d b yx m l w e bs e r v i c e sc a nb ed i s c o v e r e dt h r o u g hi n t e r a c t a n d 啪 i n t c r a c td i r e c t l yw i t ho t h e ra p p l i c a t i o n sb yx m l m e s s a g e sv i am a n y n e t w o r kp r o t o c o l s 。w r e bs e r v i c e s 啪b ed e s c r i b e d d i s c o v e r e da n d i n t e g r a t e dt h r o u g hu d d i ,w h i c hi st h eb r i d g eb e t w e e nt h ep r o v i d e r sa n d u s e r so fw e bs e r v i c e s a l t h o u g hs o a c o n t i n u e st oh e a tu p ,i ti sd i f f i c u l tt os a n ys y s t e m w h i c hi si m p l e m e n t e ds u c c e s s f u l l yu s i n gs o a 仃a m e w o r k t h ef e a s o ni s t h a ti tn e e d sg r o p ea n dp r a c t i c ec o n t i n u a l l yt h a tat h e o r yb e c o m e sa n i m p l e m e n t a t i o nj u s tl i k et h eb i r t ho ft h e o r y d i g i t a lc a m p u sc o n s t r u c t i o n i nb e i j i n gu n i v e r s i t yo fp o s t sa n dt e l e c o m m u n i c a t i o n sp r o v i d e sav e r y g o o dp r a c t i c ec h a n c ef o rs o ai m p l e m e n t a t i o ni ne d u c a t i o ns y s t e m n i sp a p e ri sb a s e do nt h ep r o j e c t ,j o b sa r ea sf o l l o w s : 1 t 0h a v et h eu n d e r s t a n d i n go fs o ai ni ti n d u s t r yc o m p r e h e n s i v e l y a n dc o n c r e t es o a i m p l e m e n t a t i o nt e c h n o l o g yo fe a c he n t e r p r i s e ; 2 t or e s e a r c hf r a m e w o r ko ft y p i c a ls o a ; 3 t 0l e a r nm a i n t e c h n o l o g i e sr e q u i r e d i ns o ai m p l e m e n t a t i o n h i 北京邮电大学硕士学位论文 a b s t r a c t c o m p r e h e n s i v e l y ; 4 t om a i n l yr e s e a r c hs e r v i c er e g i s t r y t e c h n o l o g y i ns o aa n di t s n e w e s ts t a n d a r d s ; 5 t oa i mf o rt h ea c t u a li n f o r m a t i o nc o n s t r u c t i o nc o n d i t i o no fb e i j i n g u n i v e r s i t yo fp o s t sa n dt e l e c o m m u n i c a t i o n s ,a n dp r o p o s eo v e r a l l f r a m e w o r ko fb e i j i n gu n i v e r s i t yo fp o s t sa n dt e l e c o m m u n i c a t i o n s b yu s i n gs o a ; 6 t od e s i g na n di m p l e m e n tt h er e g i s t e rc e n t e ro fb e i j i n gu n i v e r s i t yo f p o s t sa n dt e l e c o m m u n i c a t i o n sb ya p p l y i n gt h eu d d i v 3 0 2 ; 7 t od e s i g na n di m p l e m e n tw e bs e r v i c eo fc a m p u si n f o r m a t i o ns y s t e m a n du d d i st y p i c a la p p l i c a t i o ne n v i r o n m e n t ; 8 t or e s e a r c hs o m eo ft h en e w e s tt e c h n o l o g i e so fw e bs e r v i c e k e yw o r d s : s o a ,u d d i ,w e bs e r v i c e ,j a v a i v 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:二包土互牡 日期:二筮竺立_ 羔l 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在年解密后适用本授权书非保密论 文注释:本学位论文不属于保密范围,适用本授权书 本人签名:圣型垒:宣本人签名:! 至型二坌:登 导师签名: 日期:丝z 三: 北京邮电大学硕士学位论文第一章绪论 1 1 研究背景 第一章绪论 电子计算机的诞生,把世界带入信息时代。互联网( i n t e r n e t ) 的诞生把世 界带入网络时代。当今,信息技术的应用已经伸向了世界的各个角落,互联网无 处不在。它在让我们的生活变得丰富多彩的同时,也为企业带来了惊人的效益。 有远见的商业组织早己将自己的商业模式转向互联网:构建企业门户网站、发布 产品和服务信息、进行电子商务活动。而且,这些企业已经从对互联网的投资中 得到了显著的商业回报,抢到了网络时代的第一杯羹。现在,所有的组织( 不仅 仅是商业组织) 都认识到了互联网的巨大价值,都已经或准备把自己的业务放到 互联网上。【1 】 传统的互联网仅仅能提供信息展示和简单的交互功能,而对于复杂的商业逻 辑处理起来就显得力不从心了。然而,随着j 2 e e 和n e t 技术的产生和广泛应用, 互联网应用发展到了一个新的高度。以前只能在单机或用c s 结构实现的各种应 用,几乎都能在互联网上实现。这正是软件开发方法不断演进的结果。 在过去短短的几十年中,应用软件开发方法经历了一次又一次的变化,从面 向过程( p r o c e s s o r i e n t e d ) 到面向对象( o b j e c t - o r i e n t e d ) ,再从面向组件 ( c o m p o n e n t o r i e n t e d ) 到今天的面向服务( s e r v i c e o r i e n t e d ) ,每一次的变化 都使开发效率提高、开发成本降低。 目前,互联网应用( w e b a p p l i c a t i o n ) 主要是采用面向组件的开发方法,以 中间件为核心开发的。所谓中间件是相对于以前的c s 结构而提出的,它把业务 逻辑抽象成一个个组件,然后把这些组件放在中间层的应用服务器上运行。应用 服务器负责各个组件所需要的事务和安全等基础服务、以及组件的管理和监控 等。开发人员不需要处理这一类的基础服务,而只要专注于业务逻辑的实现就行 了因此对于开发各种企业应用,如e r p ,c r m 以及电子政务等等各种应用系 统,软件公司只需要购买专业的中间件产品,不用自己费时费力的开发和维护中 间件和基础件产品 但是在当今主流的三种中间件平台( s u n 公司的j 2 e e 平台,微软的 c o m d c o m 平台以及o m g 的c o r b a 平台) 之间无法实现有效的互操作,这 也就为将来应用的扩展、变更及融合埋下了隐患。 w e b 服务的兴起,对互联网应用的转变产生了决定性的影响w e b 服务是 一个能够实现远程数据交互的一个技术和协议,可以通过h t l v 进行通信。w e b 北京邮电大学硕士学位论文第一章绪论 服务定义了应用程序如何在w e b 上实现互操作性。它可以使用任何语言,在任 何平台上实现,只要用户能够通过w e b 服务标准对这些服务进行查询和访问。 w e b 服务的成熟与广泛应用,为s o a ( 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 框架,系统之间的耦合性大大降低,从 而提高软件组件的可重用性。【3 】 2 0 多年前,当g a r t n e rg r o u p 公司提出s o a 这个概念的时候,曾经引起业 内的轰动,但是在当时就像海市蜃楼一样,无法给人看得见摸得着的感觉。而且, 由于当时的软件技术水平还不足以支持s o a 的实现,这个概念就搁浅了。今天, 随着w e b 服务标准及相关软件技术的成熟,s o a 再次焕发出了生机。【4 】 s o a 的实现方式并没有固定模式,但是随着w e b 服务( w e bs e r v i c e ) 的产 生与发展,w e b 服务渐渐成为实现s o a 的最佳方式。 w e b 服务最大的特点就是平台无关性和开发语言无关性。不管用何种方式实 现的w e b 服务都可以通过网络,实现相互调用。它甚至可以透明地穿越防火墙, 这样,就把互联网变成了应用运行的统一的平台。从根本上改变了传统应用程序 的运行方式。 随着s o a 的广泛应用,w e b 服务的数量越来越多,对w e b 服务的使用越来 越复杂,这很容易把使用者淹没在w e b 服务的海洋中。面对如此众多的w e b 服 务,到底哪些是需要的w e b 服务? 哪里能够找到它们? 如何才能访问这些w c b 服务? 要解决这一系列问题,可以使用w e b 服务注册表对w e b 服务进行有效的 管理。u d d i ( u n i v e r s a ld e s c r i p t i o nd i s c o v e r ya n di n t e g r a t i o n ) 就是当前最流行的 w e b 服务注册表的具体实现方式之一。 u d d i 是一个广泛的、开放的行业标准,它提供了一个通过互联网描述、发 现和集成w e b 服务的平台独立的方法。它使得w e b 服务的提供者和使用者能够 彼此发现,定义它们彼此怎样在i n t e m e t 上互相作用,并且怎样在一个注册体系 架构中共享信息。在这样一种系统构架上,企业级应用就能够快速、方便地发现 合适的对等实体,并灵活、高效的使用它们或做出相应的变化。 1 2 国内外研究现状 o a s i s 国际标准同盟( o r g a n i z a t i o nf o r t h ea d v a n c e m e n to fs t r u c t u r e d i n f o r m a t i o ns t a n d a r d s ) ,是由主要软件厂商组建的组织,目前已经有超过3 0 0 家 企业成为它的会员。作为s o a 相关技术标准的主要制订者,o a s i s 一直引导着 s o a 技术的发展。o a s i s 接受各个厂商推荐的w e b 服务说明书,把它们分到两 2 北京邮电大学硕士学位论文第一章绪论 个不同的工作组中进行讨论。一个负责w e b 服务交易,另一个负责w e b 服务安 全。并且已经出台了一系列规范和试验性说明书( 如u d d i 、w s d m 、s c a 、 s d o 、w s s e c u r i t y 等) 。另外一个组织a p a c h e 软件基金会也围绕w s d m 等方向成立了开源项目,希望能解决s o a 发展中所遇到的疑难问题。 各大软件厂商对s o a 及其实现技术都有不同的认识。 c a 公司是o a s i s 国际标准同盟的成员之一,在s o a 的理论与实践中都积 累了丰富的经验。c a 公司e t r u s t 产品部的高级副总裁t o b y j w e i s s 说:“随着 采用w e b 服务的商业实体的数量在世界范围内不断增长,为这些w e b 服务提供 高效、可靠的基于标准的服务发现功能,就变得越来越重要了。随着w e b 服务 管理和安全标准的进步,u d d i 将帮助企业应对这些挑战,因此也将提升w e b 服务的适应性,促使商业解决方案的开发,这些都将利用多个w e b 服务之间的 互操作性。”l ,j m m 认为,s o a 是企业“随需应变”的业务基础。s o a 通过将企业软件资 产作为企业可重复使用的服务,从而实现“随需应交”。企业可以评估目前所处 的阶段,然后利用s o a 模型来提高其r r 灵活性和响应性这样,客户就可以快 速实施其应用系统,迅速从s o a 中实现真正的业务价值。 6 】i b m 公司负责软件 标准的副总裁k a r l an o r s w o r t h y 说:“u d d i 在s o a 开发中还要充当重要角色 i b m 在w 曲s p h e r e 应用服务器中提供对u d d i v 3 的支持。”翻 b e a 认为s o a 围绕“服务”,而不是“应用”组织企业1 t 。b e a 致力于通 过开放标准和s o a 推进整个应用基础结构的兼容性,能帮助企业快速实现r r 价 值。1 7 l 将应用程序开放,使它们成为服务。其他应用程序开发人员就可以轻松的 将这些功能集成到自己的应用程序中,而不需要与底层服务提供者建立明确的联 系。嘲 s a p 公司负责n e t w e a v e r 标准的副总裁m i c h a e l b e c h a u f 说:“作为u d d i v 3 标准的合著者之一,& 心支持将其推荐为o a s i s 的标准。在u d d i v 2 基础之上, u d d i v 3 增加了对x m l 数字签名的支持,来保证数据的完整性和真实性,而且 提供了p u b s u b 机制来应对发布地址的改变。在下一个版本的s a pn e t w e a v e r 中, 开放的集成与应用平台将支持u d d i v 3 。这反映了s a p 对于这些工业化标准和互 操作性的承诺,这些标准可以使用户整合和维护其通过s o a 实现的r r 基础设 施。”【5 l & ”公司已经推出基于u d d i v 3 规范的公有u d d i 注册中心 ( h t t p :u d d i s a p c o m ) 。1 9 1 m i c r o s o f t 认为,面向服务将变成架构系统的普遍风格。微软的w c f ( w i n d o w sc o m m u n i c a t i o nf o u n d a t i o n ) 是构建安全可靠的事务性服务的统一框 架,是s o a 的一种具体实现。它具有构建分布式面向服务系统的技术基础:统 3 北京邮电大学硕士学位论文第一章绪论 一了消息风格和r p c 风格;并且通过二进制和基于开放标准的通信达到了平台 最优化;编程模型的优雅而简单。 1 0 l 目前,m i c r o s o f t 在其w i n d o w s2 0 0 3s e r v e r 中提供了符合u d d i v 2 规范的u d d i 注册中心。【1 1 l 1 3 主要目的和意义 本课题来源于将要采用s o a 思想构建的北京邮电大学数字化校园系统。 北京邮电大学是一所以信息科技为特色,工学门类为主体,工、管、文、理 相结合的多学科全国重点大学。北京邮电大学拥有众多学院和教辅部门,业务流 程复杂多变。多年来,各个部门都实施了自己的应用信息系统。随着这些应用系 统的不断完善,各部门的办公效率大大提高。 如今,北京邮电大学所实施的数字化校园工程,正是在这基础上实现由部门 办公的自动化到整个校园内系统的全面整合。 现在存在的问题是:这些既有系统所采用的平台各异,开发工具和语言也各 不相同。而且它们都是以本部门的业务为核心进行设计与开发的。正因如此,使 得这些系统虽然功能完善,但是却形成了一个个“信息孤岛”,无法有效的实现 信息共享,更难实现服务共享。由于这些问题的存在,使得实现数字化校园很困 难。而s o a 技术正是解决这些复杂问题的最佳方式。 s o a 技术以w e b 服务为基础构件,用其搭建整个系统灵活高效。在各部门 对外提供了标准的w e b 服务基础上,整个校园的信息系统整合和系统间的服务 共享可以在s o a 框架内方便的实现。而整个系统的实现也就由编程为核心转变 为以配置为核心。 u d d i 正是s o a 的核心组件之一,所以实现u d d i 也就成为北京邮电大学 数字化校园建设的关键任务之一。最新的u d d i v 3 0 2 标准是对u d d i 最全面、 系统的技术描述。在国外,仅有m m 、s a p 等大公司出品了支持u d d i v 3 标准 的产品或服务。在国内,还没有支持该标准的产品或应用。同时,在国内s o a 被业界热炒与其具体实践项目的匮乏成了鲜明的对比 北京邮电大学被称为“信息黄埔”。自然地,在校园信息化建设方面也应该 走在同行业的前列。如果能采用s o a 体系结构实现北京邮电大学校园信息系统 的全面整合,不仅能够为s o a 从理论走向实践积累经验,也必将在同行业内产 生重大的示范作用。 1 4 主要工作 主要工作包括: 4 北京邮电大学硕士学位论文第一章绪论 1 全面了解业界对s o a 的理解和各组织s o a 的具体实现技术; 2 研究了典型的s o a 体系的框架结构; 3 全面学习了典型的s o a 体系实现所需要的主要技术; 4 重点研究了s o a 体系中服务注册技术及其最新标准; 5 针对北京邮电大学校园信息化建设的实际情况,提出了使用s o a 体系实现 数字化校园的总体框架; 6 应用最新的u d d i v 3 0 2 标准,设计并实现了北京邮电大学w e b 服务注册中 心: 7 设计并实现了数字化校园系统中w e b 服务与u d d i 的典型应用环境; 8 研究了部分w e b 服务最新发展方向与技术。 1 5 小结 软件构架和开发方法经历了一次次革命性的发展变化后,分布式软件基础架 构成为主流如今,在沉寂了多年以后,s o a 成为众多厂家竞相追捧的分布式 软件构架。这归功于软件技术的发展,尤其是w e b 服务及其相关技术( x m l s o a p 、w s d l , u d d i ) 的产生、发展和成熟。本课题来源于将要采用s 0 a 思 想构建的北京邮电大学数字化校园系统,它将实现校园内各信息系统的全面整 合。下一章将对分布式计算机技术的发展和s o a 体系结构作详细介绍。 5 北京邮电大学硕士学位论文 第二章s o a 体系结构及主要技术 第二章s o a 体系结构及主要技术 2 1 分布式计算的发展历程 2 1 1 什么是分布式计算 随着计算机的产生与发展,计算机软件也经历了从诞生到不断发展的过程。 作为计算机软件核心思想之一的计算模型,从最初基于大型机的集中式走向了基 于网络的分布式。1 1 2 1 所谓分布式计算就是把工作量巨大的计算任务分解成若干 个小的部分,然后将这些小部分分配到多个软件上并行运行。这些软件既可以在 同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。这些软 件之间可以共享信息,最后再把各个部分的计算结果综合起来得到最终的结果。 传统的分布式计算多是基于c 届( 客户机服务器) 结构的二层应用,其结构 如下图2 1 所示。 客户机 通常是一台p c 机 服务器 通常是u n i x 小型 壁籀翕囊| :曼:;茏;孽舞嘿翻 i i ,辑焖f 母谤斓 i 数耪岸 j ri龟0 幽赫:女,僦; 图2 - 1 二层客户机,服务器体系1 1 2 1 而近年来基于b s ( 浏览器,服务器) 结构的分布式计算模型( 三层多层结 构) 大行其道,风头早已盖过了g 侣结构,其结构如下图2 2 所示。 客户机 ( 表示层) 应用服务器 ( 业务逻辑层) 数据库服务器 ( 数据层) 7 i :存嘤。j l 用户界面包括; 7 r 量删卜 f g u i 界面 浏览嚣界面 f 写 。;竺。l 图2 - 2 典型的三层客户机,服务器体系结构1 1 2 i 6 北京邮电大学硕士学位论文 第二章s o a 体系结构及主要技术 典型的分布式计算模型包括:o m g 的c o r b a ,m i c r o s o f t 的c o m d c o m , s u n 的j 2 e e e j b 和正在被业界热炒的w e bs e r v i c e s o a 。 2 1 2c o r b a 技术 分布式应用系统应该具有如下特点; 与提供商无关; 与平台无关; 与网络无关; 与语言无关; c o 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 r a r c h i t e c t u r e ) 是由对象管理组织( o b j e c tm a n a g e m e n tg r o u p ,o m g ) 制订的一 种标准的、面向对象的应用程序体系结构和规范。它是为解决分布式处理环境中, 硬件和软件系统的互连而提出的。它可以用于创建、发布和管理网络分布式程序 对象。 3 2 1 c o r b a 定义了一系列a ll ,通信协议和物件,服务信息模型用于使异构 的应用程序能够互相操作( 这些应用程序可以使用不同的程序语言编写,运行在 不同的平台上) 。c o r b a 中的客户程序通过对象请求代理( o r b ) 可以请求来 自服务器程序或对象的服务,而无需了解服务器在分布式网络中的位置。对于 o r b 之间的通信,程序使用g i o p ( g e n e r a li n t e r - o r bp r o t o c 0 1 ) ;对于i n t e m e t 则使用h o p ( i n t e r n e ti n t e r - o r gp r o t o c 0 1 ) 0 3 l 。这样,只要符合c o r b a 标准的 应用程序就可以相互通信了。 但是c o r b a 也存在着局限性。这些局限性包括: c o r b a 使用i i o p ,这就需要使用自定义安全代码,从而影响了互操作性; 必须在防火墙上进行相应的设置,否则i i o p 无法穿越防火墙; c o r b a 实现方案很复杂,需要设计、安装和维护的特殊技巧 组件对象模型( c o m p o n e n to b j e c tm o d e l ,c o m ) 是m i c r o s o f t 提出的一种 分布式计算体系结构。它是一种说明如何建立组件以及如何通过组件构建应用程 序的规范。c o m 是作为工作站级的组件技术开发出来的。随着d c o m 的产生, c o m 也可以通过远过程调用和远程组件实例化来支持分布式应用。1 1 4 】 d c o m 是c o m 的无缝扩展,是一组m i c r o s o f t 建立的概念和程序接口在 其中,客户程序对象可以请求来自网络上另一台计算机上服务器程序对象的服 务。d c o m 可以在企业内部网络上运行,也可以在公用网络( 如i n t e m e t ) 上运 7 北京邮电大学硕士学位论文第二章s o a 体系结构及主要技术 行,它采用t c p i p 协议和h r r p 协议。 但是作为m i c r o s o f t 的产品,c o m d c o m 有着与生俱来的缺点: 对操作系统的依赖性太强,不能脱离m i c r o s o f t 的平台运行; 开发和调试特别复杂,因为它需要创建互操作软件所需的体系结构。 1 2 1 2 1 4 2 e 日曰b 技术 由s u n 公司提出的j 2 e e e j b ( j a v a 2e n t e r p r i s ee d i t i o n e n t e r p d s ej a v a b e a n s ) 相对于c o r b a 而言,其最大的特点就简单,可以帮助开发人员快速构建分布式 系统。【1 2 】 e j b 实现分布式应用的基础是远过程调用( r e m o t em e t h o di n v o c a t i o n , r m i ) 。r m i 是一种使用j 2 e e 技术,使不同计算机上的组件可以在分布式网络 中进行交互的方法。i d i 但是,r m i 也存在如下一些缺点。比如,客户和服务器 之间的通信需要依靠专用协议j a v a 远程方法协议( j a v ar e m o t em e t h o d p r o t o c o l ,j r m p ) 。所以,要把使用不同语言开发的分布式应用服务器组件集成 到一起是很困难的,从而,降低了使用多项技术开发的软件组件之间的互操作性。 f 1 3 1 同时,虽然与c o r b a 相比,e j b 的开发相对简单,但是包括f a b 2 0 在内 的以前的f a b 版本,在实际开发过程中依然存在开发复杂、调试困难等问题。 新的e j b 3 0 对f i b 编程模型做了相当的简化,比如:通过依赖注入封装e j b 的 工作环境;简化了e j b 的类型,使用j a v a b e a n s 风格的类,会话b e a n 和实体b e a n 不需要组件接口;实体b e a n 支持继承和多态;查询语言支持动态查询,提供g r o u p b y 批量操作等。但是,结果依然不能令人满意。比如:在一些依赖注入不能照 顾到地方,还必须使用j n d i 等。 2 1 5w e b 服务技术与s o a 以上介绍的这些分布式计算的实现技术各有特点,而且都已经有了很好的应 用。但是,他们之间的互操作性却是十分有限的。例如,d c o m 和c o r b a 之 间要进行通信就必须通过d c o m c o r b a 桥来进行。如果d c o m 和c o r b a 的 基础协议发生变化,那么编程人员就必须修改这个桥。这就影响了分布式计算帮 助业务过程集成与自动化的能力。1 2 4 l 而且,这些传统分布式计算都有如下缺点: 开发和维护复杂; 会受到网络的限制。比如,有的需要在防火墙上设置通道。l 玎j 而w e b 服务则完全没有了这些限制。w e b 服务是通过标准i n t e r a c t 技术与另 一台计算机进行动态交互的松耦合软件组件,是建立可互操作的分布式应用程序 8 北京邮电大学硕士学位论文 第二章s o a 体系结构及主要技术 的新平台。w e b 服务与传统分布式计算相比,最大的优点就是w e b 服务完全采 用开放的标准。 从表面上看,w e b 服务就是一个应用程序,它向外界暴露出一个或多个能够 通过w e b 访问的a p i ,实现了不同系统平台、用不同开发语言、开发技术实现 的软件个体之间的通讯。从深层次上看,w e b 服务是一种新的w e b 应用程序分 支,它是自包含、自描述、模块化的应用,可以在网络中被描述,发现和调用。 w e b 服务的优势有: 使用开放的标准,使不同的语言和不同的平台上的组件可以互相通信; 能促进模块化编程方法,使公司可以复用同一w e b 服务与多个公司通信; 实现比较容易,因为它们用现有的基础结构交换信息; 使用w e b 服务可以大大减少企业应用程序集成( b u ) 和b 2 b 的应用成 本; 可以递增实现,而不是一次完成。这样可以减少技术切换造成的混乱。俐 s o a 的出现,使得在构建分布式应用系统时,让我们不仅仅把重点放在诸 如c o r b a 、c o m 或j 2 e e 等具体实现技术上,而是将着眼点放到了更高的层次, 即服务上 s o a 是一种设计方法学,其目的是最大限度地重用应用程序中现有的服务, 以提高r r 适应性和效率。对于系统架构师而言,这意味着允许快速开发和部署 业务功能,定义整体企业架构和流程。在基于s o a 架构的系统中,具体应用程 序的功能是由一些松耦合并且具有统一接口定义方式的组件组合构建起来的。可 以说s o a 的出现,将为整个企业级的软件架构设计带来巨大的影响。 s o a 所要解决的问题包括: 效率:将业务流程从“烟囱”状、重复的流程向维护成本较低的高度利用、 共享服务应用转变; 响应:迅速适应和传送关键业务服务来满足市场需求,为客户、雇员和合作 伙伴提供更高水准的服务; 适应性:更高效地转入转出,让整个业务变得更简单和更容易,达到节约时 间和资金的目的。 与传统的开发方法相比,s o a 的优势在于: 复杂性降低:基于标准的兼容性,与点到点的集成相比,降低了复杂性; 重用增加:通过重用以前开发和部署的共享服务,实现了更高效的项目开发 和交付; 遗留集成:用作可重用服务的遗留应用程序,降低了维护和集成的成本 开放与标准化:现有的s o a 标准都是完全开放的,而且各组织仍然在不断 9 北京邮电大学硕士学位论文 第二章s o a 体系结构及主要技术 吸收和完善各种标准。【1 5 】 s o a 的实现可以有多种方式:w e b 服务,c o r b a 和远过程调用( r m i ) 等。 因为大部分s o a 都涉及到集成遗留数据,此类数据包含在使用诸如m qs e r i e s 和c o r b a 等技术的系统中。而且其中的许多技术都已针对s o a 进行了调整, 不管有无w e b 服务包装均可使用。但如今,w e b 服务已经成为实现s o a 的最常 见技术,而且,w e b 服务正迅速成为用于支持s o a 的事实标准。这正是因为如 前所述w e b 服务与生俱来的强大的互操作性。 2 2 s o a 体系结构 使用s o a 构造应用系统时,第一步,先使用w e b 服务将各个系统所提供的 服务暴露出来,使系统之间能够互相访问。第二步,将这些暴露出来的服务用总 线的形式串联起来,实现了服务的集成和管理。这就是s o a 的一般原则。 根据s o a 的一般原则,为s o a 提出如下的参考架构。 2 2 1w e b 应用层 此层要求所有业务系统和解决方案都可从浏览器中访问。这一层是用户界面 的展示层,包含企业基础架构服务和应用程序等组件的业务逻辑。w e b 应用层的 实现包括: 打包的应用程序; 自定义应用程序: 门户服务; 企业基础架构服务; 基于角色的企业门户。 1 6 1 2 2 2 服务层 服务层能够完成在企业之间进行集成与业务流程自动化的功能,而其原则是 粗粒度、松耦合和基于标准的服务。它通过为减少的应用程序和基础架构复杂性, 业务服务增加的重用性,以及服务编排能力,来帮助r r 响应不断变化的业务需 要。该层的主要组件包括: 服务总线 服务总线应该能够通过任何协议接受任何同步或异步消息,并根据配置规则 将其传送到目的地。此外,它能够将消息转换为目标要求的格式。 服务注册表 l o 北京邮电大学硕士学位论文第二章s o a 体系结构及主要技术 服务注册表是为架构师、开发人员、操作人员和业务经理提供的可用服务的 目录。它的功能包括:存储和复制服务注册数据和保证其安全;数据验证、s o a 映射、高级分类以及业务数据访问服务:生命周期服务;配置基于w e b 的业务 服务控制台等 s o a 储存库 s o a 储存库是在服务生命周期( 从项目初期到完成) 中管理元数据的关键 组件。其主要目的是存储详细元数据,包括存储服务定义;过程映射;业务规则; 实体和关系;编排、转换、参考数据模型:业务活动和事件;审计要求;角色和 授权映射,以及治理规则和策略。 服务管理器 服务管理器的主要功能在于管理、监控和报告整个企业内的所有服务,包括: 管理和维护整个企业的服务级别;检测和管理异常情况;审查和监控业务;管理 服务生命周期并在部署前进行验证;管理多个服务总线和服务注册基础架构,并 与之集成等。 共享数据服务 共享数据服务提供了多项关键功能,包括:电子数据互换,使用网络在不同 公司之间传输数据:数据提取、转换和加载;企业信息集成;数据匹配引擎;数 据工作;工作流。 业务流程管理 业务流程管理用于管理长期运行的同步和异步业务流程。服务总线执行的是 轻量级的服务编排,而业务流程管理执行下面的更高层的内容,包括:可视化的 流程建模;优化流程性能:流程实例监控;允许任务创建人、工作人员和管理员 与运行中的业务流程交互;使用标准协议提供安全的消息传递、数字签名和加密, 动态配置升级等。【1 6 l 2 2 3 应用层 应用程序包括旧的应用程序,这类程序通常具有一些发布了的a p i 或逻辑 模型用于集成。s o a 体系结构中新应用程序应该将其a p i 作为w e b 服务公开出 来,从而实现系统集成。针对这些新旧共存的系统,在应用层中应该提供企业应 用集成( f a d ) 功能,通常包括: 消息传递,使用面向消息的中间件; 业务流程管理器,提供自动化业务流程的专有功能; 应用程序适配器,允许访问应用程序视图或者由其它技术实现的应用适配 器: 1 1 北京邮电大学硕士学位论文 第二章s o a 体系结构及主要技术 2 2 4 基础架构层 面向服务的基础架构( s e r v i c e o r i e n t e di n f r a s t r u c t u r e ,s 0 1 ) 要具有资源计算、 联网和存储数据功能。这些资源被提取到逻辑模型中以后,就会被存储起来。除 了储存简单的资源配置信息外,也可能包含计算、存储和网络资源及其操作流程 的依赖关系。一旦定义了资源及相关性,基础架构层就可以在应用程序之间共享 和同步这些信息。 基础架构层还提供了服务的执行功能。根据需要为应用程序分配虚拟处理、 存储和网络资源。随着应用程序工作负载的增加,软件可以实时自动分配附加资 源。1 1 6 1 2 3s o a 的主要技术 基于s o a 的应用系统的具体实现并没有固定模式,但是现阶段业内通常将 w e b 服务作为实现s o a 的核心技术。因此,就有了如下图2 - 3 所示的,使用w e b 服务的典型s o a 应用系统的结构图。例 厂 u d d i l w s d l s o a p h t t p ,s m p t 图2 - 3 典型的s o a 体系结构 最顶层是控制服务流转的部分:提供服务路由的功能。其实现技术包括w e b 服务流语言( w e bs e r v i c ef l o wl a n g u a g e ,w s f l ) ; 其下,是服务的发布与发现部分:服务提供者如何让他人知道他所提供的服 务;服务的使用者如何找到他所需要的服务,都在该处实现。u d d i 是当前最流 行的w e b 服务发布与发现工具的实现; 北京邮电大学硕士学位论文 第二章s o a 体系结构及主要技术 再下,是服务的描述部分:服务所在的位置、所能完成的功能、调用参数和 返回值等关于服务的具体信息都能在这里找到。对于w e b 服

温馨提示

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

最新文档

评论

0/150

提交评论