




已阅读5页,还剩62页未读, 继续免费阅读
(计算机软件与理论专业论文)基于web+service的企业信息平台架构.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
四川大学顾士学位论文 【摘要】 基于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 是一种可命名的网络资源,是用于创建开放的分布式系统的构件, 作为一种部署在w e b 上的可复用构件,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 应用中急需解决的安全性、事务性问题 做了详细的阐述,在此基础上,给出了一个基于w e bs e r v i c e 的企业信息平台 体系架构。 关键字:s o a 、w e bs e r v i c e 、企业信息平台、安全性、事务性 四川大学硕士学位论文 e n t e r p r i s ei n f o r m a t i o np l a t f o r m c o n f i g u r a t i o nb a s eo nw e bs e r v i c e c o m p u t e rs o f t w a r ea n dt h e o r y m a s t e rc a n d i d a t e :l u oj i a np i n ga d v i s o r :p r o f t a n gn i n gj i u a b s t r a c t w i t ht h ec o n t i n u o u sd e v e l o p m e n to fc o m p u t e rs o f t w a r et e c h n o l o g y ,m o r ea n d m o r ee n t e r p r i s e sn e e dt ob u i l dt h e i ro w ni n f o r m a t i o np l a t f o r m w h e nb u i l d e n t e r p r i s ei n f o r m a t i o np l a t f o r m ,t h e yw i l lf a c et h e i s s u e so fo r i g i n a ls y s t e ma n d f u t u r es y s t e mi n t e g r a t i o n o r i g i n a ls y s t e mo f t e nh a v ed i f f e r e n tp l a t f o r m s ,s y s t e m s , d e v e l o p m e n tl a n g u a g e s ,d a t a b a s e s ,n e t w o r k sa n do t h e rd i f f e r e n c e s b e t w e e nt h e v a f i o u ss y s t e m so fi n f o r m a t i o na n dr e s o u r c es h a r i n gd i f f i c u l t i e s , as o - c a l l e d ”i n f o r m a t i o ni s o l a r e di s l a n d ” t r a d i t i o n a l e n t e r p r i s ei n t e g r a t i o nt e c h n o l o g y a l eo f t e ne x i s t i n t e g r a t i o n c a p a b i l i t i e sp o o r , t h ep o o rc a ne x p a n dc a p a c i t y , i n t e g r a t i o n c o s t sa r et o oh i 【g h s h o r t c o m i l l 萨,b u ts 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 ) h a v em a n ya d v a n t a g e s s u c ha si n t e g r a t e da b i l i t yt oe x p a n s i o n a r yh i g h ,p a c k a g i n gg o o d ,s i m p l ea n df l e x i b l e , o p e ns t a n d a r d s ,l o o s ec o u p l i n g i t b e c o m et h en e wd i r e c t i o no fe n t e r p r i s e i n f o r m a t i o np l a t f o r mi n t e g r a t e d , a n dt h ew e bs e r v i c ei st h eb e s tt e c h n o l o g yt o i m p l e m e n ts 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 w e bs e r v i c e si san e t w o r k c a l lb en a m e d r e s o u r c e sf o rt h ee s t a b l i s h m e n to fa l lo p e nd i s t r i b u t e ds y s t e mc o m p o n e n t s ,a sa d e p l o y e da tt h ew e bc a nu s et h ec o m p o n e n t s ,w e bs e r v i c ew i t hg o o dp a c k a g i n g n a t u r e ,a n dc a nb ed e s c r i b e db ys t a n d a r da g r e e m e n t sw i t ho t h e rc o m p o n e n t so f i n t e g r a t e da s s e m b l yf o rt h en e wa p p l i c a t i o n s t h i sa r t i c l ei n t r o d u c e dt h ee l e m e n t a r y k n o w l e d g e o fs 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 ( s o a ) i nd e t a i l d i s c u s s e dw e bs e r v i c ea n di t st h ec o r r e l a t i o n 四川大学硕士学位论文 t e c h n o l o g y , a n dd e t a i l e d l ye l a b o r a t et h es e c u r i t y ,t r a n s a c t i o n i nw e bs e r v i c ew h i c h n e e du r g e n t l yt or e s o l v e ,i nt h i sf o u n d a t i o n ,h a sp r o d u c e da ne n t e r p r i s ei n f o r m a t i o n p l a t f o r ms y s t e ma r c h i t e c t u r ew h i c hb a s e do nt h ew e b s e r v i c e k e y w o r d s :s o a 、w e bs e r v i c e 、e n t e r p r i s ei n f o r m a t i o np l a t f o r m 、s e c u r i t y 、 t r a n s a c t i o n 四川大学顾e 学位论文 第一章前言 1 1 企业信息化的背景 从上世纪六、七十年代起,企业开始利用计算机来代替一部分联系不那么 密切、手工的重复性劳动的工作环节,以提高生产效率。到了上世纪八,九十 年代开始,全球企业投入了巨大的资金,为企业建立了包括e r p 、c r m 、s c m 在 内的各种应用信息系统,以帮助企业提供工作效率,加强公司管理。据统计, 在过去的1 0 年中,全球企业在信息系统上一共投资1 8 万亿美元。但由于各种 各样的原因,企业的信息系统存在着不同平台、数据库、开发语言、服务起的 差异,在信息传输、资源共享上极为不便。在此情况下,企业一方面既要面对 原有的相关i t 系统,同时,又希望引进更先进的企业信息化系统及模式,这样 企业应用集成( 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 t ) 便成为国内外 研究的一个非常热门的领域。 传统的企业应用信息系统集成技术例如p 6 t i ,c o r b a ,d c o m 等在企业间集成 应用中取得了一定的成功,但它们仍然存在种种致命的缺点,使得它们的使用 始终处于研究领域或者应用范围狭窄。跚i ( r e m o t em e t h o di n v o c a t i o n ) 的实现 需要通信的两端都有j a v a 运行环境,这从根本上阻碍了它的推广c o r b a 虽然 成功地定义了一种语言无关的通信方式,但它却把实现对象请求代理( 0 r b ) 的协 议的任务留给了供应商。同时,企业防火墙注意到h o p 新协议,并且有的时候 就阻止o r b 通信h o p 很快给c o r b a 带来一个难与防火墙一起工作的坏名声。 d c 0 m 依赖于严格管理的环境,如果要开发d c o m 应用程序,则所有参与该分布 应用程序中的节点都必须得到w i n d o w s 系统的支持。要找到能成功地在外部调 用d c 0 m 或h o p 的任意两台计算机几乎是一件不可能的事情。此外,程序员们必 须处理数据排列和数据类型所需的协议唯一的消息格式规则。d c 0 m 和c o r b a 都 是服务器对服务器通信的合适的协议,然而,它们在客户机对服务器通信方面 都存在严重的缺陷。研究报告显示,9 0 年代中以传统方法进行系统集成的案例 中有3 1 的项目执行到一半时就因种种因素而被取消:有5 1 的项目因整合的瑕 四川丈学硕士学位论文 疵仍无法有效结案:只有1 6 的集成项目成功。 1 2 面向服务的系统集成技术 面向服务架构( s e r v i c eo r i e n t e da r c h i t e c t u r e ,s o a ) 是一种面向服务的 企业应用体系结构,它是一种松散耦合的应用程序体系结构。在这种结构中, 所有的功能被定义为独立的服务,每个服务带有明确可调用的接口。服务之间 互相通信,可以是简单的数据传递,也可以是定义好的顺序调用多个服务进行 服务组合,形成业务流程。在s o a 体系结构中,业务功能、由底层功能组成的 业务事务以及系统服务功能被构建为服务,所有的服务都是互相独立的,外部 组件只能通过服务描述来获得服务的功能。服务的实现方式是外部不可见的, 服务只能通过接口被调用,接口定义了调用服务所必须的参数和结构的类型 s o a 的服务定义如下:一个服务一般通过一个粗粒度的、可以被发现和绑定的软 件实体实现,它以单一实例的形式存在并与其他服务和应用通过松耦合的( 一般 是异步的) 、基于消息的通讯机制进行交互。 与传统方法相比,s o a 具有更多的优势:基于标准、松散耦合、共享服务、 粗粒度和联合控制。在s o a 架构下,服务实现包含了服务的功能或业务逻辑。对 于服务使用者来说,服务实现是一个“黑匣子”,用户不必知道服务功能的实现 细节一般来说,s o a 中的服务有五种类型; 数据访问:允许对不同数据源进行统一访问。 组件:提供对打包应用服务的访问。 业务:提供使用一个以上打包应用或定制应用功能的复杂服务。 组合:使用以上三种类型的服务来创建包括新功能和现有功能的新服务。 共享的或企业基础架构服务:消息日志等低级服务,其重用性使快速创建 新的高级服务成为可能。 在s o a 架构下,不管是数据访问、组件访问还是业务访问,都是对于服务 的访问,并可在此基础上组合和共享。企业由此有了标准的服务规范和接口。 p qj , l 大学硕士学位论文 1 3w e bs e r v i c e - - s o a 的具体实现 w e b 服务建立在开放标准和独立于平台的协议基础上w e b 服务通过h t t 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 ) 在服务提供着和服务消费者之 间进行通信,通过w s d l ( w e bs e r v i c ed e f i n i t i o nl a n g u a g e ) 定义的接口来公 开,w s d l 的语义用x m l 定义,通过u d d i 来发布、查找服务。所有的这些特性 都使得w e b 服务成为开发s o a 应用程序的优秀选择。 。 w e b 服务越来越成为企业开发和应用的热点。通过定义基于不同的语言和操 作系统的应用程序问能进行交互的公用方法,w e b 服务正成为一种应用集成的 平台w e b 服务作为一种分布式的计算技术,通过使用标准的x m l 协议和信息 格式用于在i n t e r n e t i n t r a n e t 上展现各种应用服务。这些应用通过包装成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 服务彻底改变了 传统e a i 中点对点的集成处理方式,它以一种松散的w e b 服务捆绑集合形式能 够快速、低代价地开发、部署、发现和动态绑定应用,其优越性主要表现在; ( 1 ) 互操作性w e b 服务通过s o a p 实现相互问的访问,任何w e b 服务都可以 与其他w e b 服务进行交互,避免了不同协议之间的相互转换。w e b 服务可以用 任何语言编写,因此开发者不需要更改开发环境就能开发新的w e b 服务,同时 还可以在新的w e b 服务中使用已有的w e b 服务,而不必考虑w e b 服务的实现语 言、运行环境等具体实现细节。 ( 2 ) 松散祸合。这一特征也是源于对象组件技术,当一个w e b 服务的实现 发生变化的时候,调用者是不会感到这一点的。对于调用者来说,只要w e b 服 务的调用接口不变,w e b 服务实现的任何变更对它们来说都是透明的,甚至当 w e b 服务实现平台从j 2 e e 迁移到n e t 或者反向迁移时,用户都可以对此一无所 知。 ( 3 ) 使用标准协议规范。作为w e b 服务,其所有公共的协约完全使用开放的 标准协议进行描述、传输和交换。这些标准协议具有完全免费的规范,以便由 任意方进行实现。 四川大学硕士学位论文 ( 4 ) 高度可集成能力。由于w e b 服务采取简单的、易理解的标准w e b 协议 作为组件界面描述和协同描述规范,完全屏蔽了不同软件平台的差异。因此, 无论是c o r b a ,d c o m 还是e 3 b ,都可以通过这一种标准的协议进行互操作,实 现了在当前环境下最高的可集成性 ( 5 ) 廉价性。w e b 服务供应商提供的免费工具箱能够让开发者快速创建和部 署自己的w e b 服务,其中某些工具箱还可以让己有的组件方便地成为w e b 服务, 这样就降低了w e b 服务的开发费用,同时也加快了开发速度。 1 4 论文主要内容和结构安排 本论文针对w e bs e r v i c e 理论及其相关技术进行了研究和探讨,提出基于 w e bs e r v i c e 的企业信息集成的体系结构和模型,然后讨论了w e bs e r v i c e 现 存的两个亟需解决的问题:事务性和安全性论文的主要内容包括两部分: 第一部分阐述了面向服务体系结构、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 相关的主要技术。 第二部分即第五章和第六章,第五章主要是介绍基于w e bs e r v i c e 的企业 信息平台的设计目标、体系结构及该信息平台的主要特点。第六章主要介绍了 w e bs e r v i c e 的事务性和安全性,并对它进行了一定的研究。 4 四川大学硕士学位论文 第二章面向服务体系结构( 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 ) 承诺能够提供 一个持久的、灵活的基础架构用于连接跨企业的各种应用系统,而w e b 服务技 术的出现为s o a 的实现提供了基础,本章将详细阐述s o a 软件体系结构关键实 现技术一w e b 服务及其对企业应用集成策略所产生的影响。 2 1s o a 综述 现在随着网络技术的发展,企业在信息化建设中产生了大量为满足产品或 服务需要的“软件组件”,如:e r p 、c r m 、o a 等一系列、电子商务和电子政务 软件组件,但其间却往往缺少关联和通讯,导致这些组件成为了一个个。孤 岛”,但这些组件恰恰又是企业不能放弃的重要投资。而基于s o a 架构的中间 件产品的出现,则使企业在需要改变i t 系统时的灵活性大为增加。 s o a 将分布在网络中的软件资源看作是各种服务,而这些服务是从业务需求 开始的,而非始于技术。因此,s o a 摆脱了面向技术的解决方案,而朝着商业 服务的方向发展。与其它企业架构方法相比,s o a 让1 t 变得更有弹性,能够更 快地响应业务需求,从而实现更好的业务灵活性,使得企业能够对变化快速和 有效地做出响应,并且利用变化来获得竞争优势。而这种灵活性的架构,意味 着它不仅能够确保当前业务的灵活性,而且可以满足企业未来的业务需求在 s o a 中,不同的应用也能够交换数据,而并不需要考虑每个应用是用什么编程 语一言开发的或在什么操作系统下运行。在这种模式下,一个应用软件或一个 应用软件的一部分是一种服务,其它应用和客户可以在无需编写大量代码的情 况下使用这些服务。就像乐高积木一样,在s o a 中一个个服务组件都变成了标 准的“建材”,可按照需要创造出各式各样的组合。 s o a 的强大和灵活性将给企业带来巨大的好处。如果某组织将其i t 架构抽 象出来,将其功能以粗粒度的服务形式表示出来,每种服务都清晰地表示其业 务价值,那么,这些服务的顾客( 可能在公司内部,也可能是公司的某个业务伙 四川大学硕士学位论文 伴) 就可以得到这些服务,而不必考虑其后台实现的具体技术。更进一步,如果 顾客能够发现并绑定可用的服务,那么在这些服务背后的i t 系统能够提供更大 的灵活性。 2 2s o a 的特点 松散祸合建立强内聚松祸合,延展性、兼容性强的分布式信息体系 重用与合成能够在应用之间重用模块并能在内部应用之间实现互交换 灵活性每一个应用都有一定的生命周期,因此它应该可以被重新纳入新的 模块,支持新的业务需求。 业务相关s o a 与其他i t 架构的最大区别在于它与业务的关联性。 开放性和互操作性以便能在不同平台和环境下共享模块 分布式使模块可以被远程访问并被集中管理。 在这些特点中,“松散耦合”和。可重用”是s o a 两个关键目标。s o a 具有 “松散耦合”的组件服务,这一点区别于大多数其他组件架构,大多数松散耦 合方法都依靠基于服务接口的消息来实现,这种接口能够兼容多种传输方式( 如 h t p ,j m s 。t c p i p ,m o m 等) 。基于消息的接口可以采用同步和异步协议实现, w e b 服务对于s o a 服务接口来说是一个重要的标准。当使用者调用一个w e b 服 务时,被调用的对象可以是c i c s 事务、d c 删或c o r 卧对象、j 2 e e e j b 或t u x e n ) 服务等,但这与服务使用者无关。可重用”设计原则使应用变得更为灵活,它 采用通用格式提供重要的业务功能,为开发人员节省了大量时间 2 3s o 中服务的层次结构 面向服务架构倡导通过服务的组合来构架灵活的系统,即将不太复杂的服 务组合成更复杂的服务、应用程序。在架构中,一个服务可能与其它服务组合 形成上一层的较大粒度的服务,同时被组合的服务又可能是其下层的一系列服 务经组合而得到的,这就是服务的层次结构 7 6 四川大学硕士学位论文 按照服务的层次结构来分可有原子服务和组合服务两种类型原子服务是 最基本的功能逻辑单元,位于服务层次结构的最底层,类似“叶子”的概念。 它存在的目的是增强功能逻辑的重用性,其内部封装了实现特定功能的服务组 件。组合服务,顾名思义,是由多个原子服务通过编排、组合的方式形成的。 它和原子服务一样提供接口供外部调用。相对而言,组合服务经常特定于某个 应用,其实现目的不是完全针对重用性,而是侧重于如何灵活的组合一系列服 务以贴切特定应用的需求。 可以按基于服务的功能及发送和接收的数据数量来定义服务,如细粒度服 务、粗粒度服务和组合服务。 细粒度服务是供粗粒度服务或组合服务使用的,而不是由终端应用直接使 用的。如果应用是使用细粒度服务建立的,则应用将不得不调用网络上多个服 务,并且发生在每个服务上的数据量较少,因而会对系统整体性带来影响。所 以粗粒度服务的用户不能直接调用他所使用的细粒度服务。然而,由于粗粒度 服务可能使用多个细粒度服务,因此它们不能提供粒度级的安全和访问控制。 组合服务可以使用粗粒度服务和细粒度服务进行组装。数据数量不是租粒 度服务和组合服务之间的区别租粒度服务例子,如创建新客户,在这一过程 的操作是:需要通过一些外部服务验证对客户进行验证,并在c r m 应用系统中 创建客户记录。组合服务例子可以是提供一个新的d s l 线,这需要一个服务调 用来验证定单、创建或验证客户,确认产品库存及为数据线分配资源。 2 4s o a 的原则 s o a 是一种企业架构,因此,它是从企业的需求开始的。但是,s o a 和其它 企业架构方法的不同之处在于s o a 提供的业务敏捷性。业务敏捷性是指企业对 变更快速和有效地进行响应、并且利用变更来得到竞争优势的能力。对架构设 计师来说,创建一个业务敏捷的架构意味着创建这样一个i t 架构,它可以满足 当前还未知的业务需求。要满足这种业务敏捷性,s o a 的实践必须遵循以下原 则: 四川大学顾十学位论文 业务驱动服务,服务驱动技术 从本质上说,在抽象层次上,服务位于业务和技术中阃。面向服务的架构 设计师一方面必须理解在业务需求和可以提供的服务之间的动态关系,另一方 面,同样要理解服务与提供这些服务的底层技术之间的关系。 业务敏捷是基本的业务需求 s o a 考虑的是下一个抽象层次:提供响应变化需求的能力是新的“元需求”, 而不是处理一些业务上的固定不变的需求。从硬件系统而上的整个架构都必须 满足业务敏捷的需求,因为,在s o a 中任何的瓶颈都会影响到整个i t 环境的灵 活性。 一个成功的s o a 总在变化之中。 2 5s o a 的三大基本特征 1 ) 独立的功能实体 在i n t e r n e t 这样松散的使用环境中,任何访问请求都有可能出错,因此任 何企图通过i n t e r n e t 进行控制的结构都会面临严重的稳定性问题。s o a 非常强 调架构中提供服务的功能实体的完全独立自主的能力。传统的组件技术,如n e t r e m o t i n g ,e b ,c o m 或者c o r b ,都需要有一个宿主( h o s t 或者s e r v e r ) 来存放 和管理这些功能实体;当这些宿主运行结束时这些组件的寿命也随之结束。这 样当宿主本身或者其它功能部分出现问题的时候,在该宿主上运行的其它应用 服务就会受到影响。 s o a 架构中非常强调实体自我管理和恢复能力。常见的用来进行自我恢复的 技术,比如事务处理( t r a n s a c t i o n ) ,消息队列( m e s s a g eq u e u e ) ,冗余部署 ( r e d u n d a n td e p l o y m e n t ) 和集群系统( c l u s t e r ) 在s o a 中都起到至关重要的作 用。 2 ) 大数据量低频率访问 对于n e tr e m o t i n g ,e 3 b 或者x m l r p c 这些传统的分布式计算模型而言, 他们的服务提供都是通过函数调用的方式进行的,一个功能的完成往往需要通 过客户端和服务器来回很多次函数调用才能完成。在i n t r a n e t 的环境下,这些 8 四川大学硕士学位论丈 调用给系统的响应速度和稳定性带来的影响都可以忽略不计,但是在i n t e r n e t 环境下这些因素往往是决定整个系统是否能正常工作的一个关键决定因素。因 此s o a 系统推荐采用大数据量的方式一次性进行信息交换。 3 ) 基于文本的消息传递 由于i n t e r n e t 中大量异构系统的存在决定了s o a 系统必须采用基于文本而 非二进制的消息传递方式。在c o m 、c o r b a 这些传统的组件模型中,从服务器端 传往客户端的是一个二进制编码的对象,在客户端通过调用这个对象的方法来 完成某些功能;但是在i n t e r n e t 环境下,不同语言,不同平台对数据、甚至是 一些基本数据类型定义不同,给不同的服务之间传递对象带来的很大困难。由 于基于文本的消息本身是不包含任何处理逻辑和数据类型的,因此服务间只传 递文本,对数据的处理依赖于接收端的方式可以帮忙绕过兼容性这个的大泥坑 此外,对于一个服务来说,i n t e r n e t 与局域网最大的一个区别就是在i n t e r n e t 上的版本管理极其困难,传统软件采用的升级方式在这种松散的分布式环境中 几乎无法进行。采用基于文本的消息传递方式,数据处理端可以只选择性的处 理自己理解的那部分数据,而忽略其它的数据,从而得到的非常理想的兼容性。 2 6 本章小结 在本章,我们首先介绍了面向服务体系结构的基本概念,然后我们分 别介绍了面向服务体系结构的特点、层次结构、原则和基本特征,为我们 后面介绍基于w e bs e r v i c e 的信息平台打下了基础。 9 四川大学顾f 。学位论文 第三章w e bs e r v i c e 的概述 w e bs e r v i c e 是建立可互操作的分布式应用程序的新平台。w e bs e r v i c e 平台是一套标准,它定义了应用程序如何在w e b 上实现互操作性。你可以用 任何你喜欢的语言,在任何你喜欢的平台上写w e bs e r v i c e ,只要我们可以通 过w e bs e r v i c e 标准对这些服务进行查询和访问。 3 1w e bs e r v i c e 的基本概念 当前大多数企业都有过去遗留下来的异构系统、应用、商业流程以及数据 源构成的应用环境,应用环境的通信十分困难。从一定角度而言,我们必须解 决这样两个问题:一是实现跨平台的互操作:二是对己有系统的集成,包括已有 的商业数据。只有解决第一个问题,我们提出的方案才具有技术上的可行性: 只有解决第二个问题,我们提出的方案才具有商业上的可行性。自从有了 i n t e r n e t ,g r t p 协议就广为使用,其简单性、可靠性、通用性使得依靠它的网 页可以流行在各个平台上。x m l 语言的诞生使得信息的传输可以脱离平台和编 程语言的限制,为网络上各种系统的“对话”提供了一门“国际化的语言”s o a p 协议为服务的请求、消息的格式定义了简单的规则,并得到各大系统软件提供 商的支持。这一切仿佛都使得w e b 服务的出现成为一种必然 w e bs e r v i c e 主要目标是在现有的各种异构平台的基础上构筑一个通用的与 平台无关的、与语言无关的技术层,各种不同平台上的应用依靠这个技术层来 进行彼此的连接和集成。不同的组织对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 的构建,人们可以期望得到一个可编程的i n t e r n e t 。 w e bs e r v i c e 是描述一些操作的接口。通过标准化的x m l 消息传递机制,可通 l o 明川大学硕士学位论文 过网络访问这些操作。w e bs e r v i c e 是用标准的、规范的基于x m l 的w s d l 语言 描述的,这称为w e bs 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 t p ,x m l ,s o a p ,w s d l ,u d d i 等标准。它是下一代分布式 系统的核心。作为一种部署在w e b 上的对象,它有着松散耦合、完好的封装性、 使用标准协议规范、高度的可集成能力等特征 3 2w e bs e r v i c e 的体系结构 w e bs e r v i c e 体系结构基于三种角色( 服务提供者、服务注册中心和服务请 求者) 之间的交互交互涉及发布、查找和绑定操作。这些角色和操作一起作用 于w e b 服务构件:w e b 服务软件模块及其描述。w e b 服务最典型的实现模型是服 务提供者拥有一个可以通过网络访问的软件模块即w e b 服务的实现,它为这个 w e b 服务定义服务说明,并把它发布给服务的消费者或服务的注册处,服务的 申请者使用查找操作从本地或服务的注册处得到服务的说明,并使用服务说明 中的信息与服务的提供者实现绑定,然后与w e b 服务交互,调用其中的操作。 服务的提供者和服务的消费者是w e b 服务的逻辑基础,一个w e b 服务既可以是 提供者又可以是申请者。从图3 - 1 中可以看出这三种角色及它们之间的交互情 况。 四川大学硕士学位论文 圈3 一lw e bs e r v i c e 的体系结构 w e bs e r v i c e 的体系结构中有三种角色: 服务提供者:它是服务的所有者,发布自己的服务和接口到注册中心, 并且对使用自身服务的请求进行响应。 服务请求者:它是一个应用程序、一个软件模块或是另一个需要其它服 务的服务它向服务注册中心提出服务请求,通过传输器绑定该服务,然后执 行该服务功能服务消费者通过接口调用该服务。 服务注册中心:它是可搜索的服务描述注册中心,服务提供者在此发布 他们的服务描述。在静态绑定或动态绑定执行期间,服务请求者查找服务并获 得服务的绑定信息( 在服务描述中) 。 为了利用w e b 服务,必然会发生以下三个行为:发布服务描述、查询或查找 服务描述以及根据服务描述绑定或调用服务。这些行为可以单次或反复出现, 这些操作具体为: ( 1 ) 发布( p u b l i s h ) :为了使服务可访问,需要服务提供者向服务注册中心注 册自己的功能和访问接口,发布服务描述以使服务请求者可以查找它 ( 2 ) 查找( f i n d ) :在查找操作中,服务请求者直接搜索服务描述或者在服务 注册中心中查找所要求的服务类型。 ( 3 ) 绑定( b i n d ) 和调用( i n v o k e ) :在检索服务描述后,服务消费者通过服务 描述的信息来定位、联系和调用服务。 四川大学硕士学位论文 为支持结构中的三种操作( p u b l i s h ,f i n d 和b i n d ) ,w e bs e r v i c e 体系结构 需要对服务进行一定的描述,这种服务描述应具有下面几个重要特点:首先,它 要声明服务提供者的语义特征。服务注册中心使用语义特征将服务提供者进行 分类,以帮助具体服务的查找。服务请求者根据语义特征来匹配那些满足要求 的服务提供者。其次,服务描述应该声明接口特征,以访问特定的服务。最后, 服务描述还应声明各种非功能特征,如安全要求,事务要求,使用服务的费用 等等。接口特征和非功能特征也可以用来帮助服务请求者对服务提供者的查找 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 即可以是一个组件( 小粒度) ,该组件必须和其他组件结合才能进行完 整的业务处理;w e bs e r v i c e 也可以是一个应用程序( 大粒度) 3 3w e bs e r v i c e 协议栈 s t a t i c - u d d i s e r v i c e discoverydis e r v i c op u b ii c a t i -hwsdl s e r vc qd e s c rp t onsoap b a s e dm e s s a g e l 一l ilili li liiil 盖f l 。_ jl iiil2i 广1l | l 事ii :l ir t o u ijl 望ll 等| i 鼍i ll ix | i 窟li6i 广 ic | | 苫| ll i ii i il ;l i 暑l l j l _ jl | ljli ! l r 1ii | ”i l i i x 睫 ill ii l 石i 帆m 一t 二亘三 u uu 四川大学硕士学位论文 这里主要把w e b 服务的互操作栈协议分为网络传输层、数据表现层、数据模 型层、基于x m l 的消息层、服务描述层、服务发布发现层和服务流程层,以下 将针对w e b 服务协议栈各层的功能以及涉及到的相应的技术和标准进行分析: 3 3 1 网络传输层 w e bs e r v i c e 协议栈的基础是网络传输层。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 使用 已普遍部署的网络协议。h t t p 凭借其普遍性,成为了i n t e r n e t 环境下w e b s e r v i c e 使用的标准网络协议。同时在某些扩展应用领域,也支持s m t p 协议( 用 于电子邮件) 和f t p 协议( 用于文件传输) 3 3 2 数据表现层 数据表现层的x m l 为整个w e bs e r v i c e 上层协议提供了数据信息描述手 段,x m l 是目前全球范围内用于描述数据和交换数据的一种标准方式对于w e b s e r v i c e 而言,无论是w e bs e r v i c e 的调用( s o a p 技术) 、w e bs e r v i c e 界面的 描述( w s d l 技术) ,还是w e bs e r v i c e 的发现( u d d i 技术) ,都是使用x m l 作为信 息描述和交换的标准手段。 , 3 3 3 数据模型层 , 在数据表现层上是数据模型层,描述数据结构的数据模型( 也称为元数据) , 它同样也是一种数据,描述数据结构的方式也是x m l x m ls c h e m a 已经成为x l l 世界中的标准数据建模语言,s o a p 、w s d l 、u d d i 的x m l 语法都是才用x m ls c h e m a 进行定义的。 1 4 四川大学硕士学位论文 3 3 4 基于x m l 的消息层 网络上的信息可以是任何格式的,但是信息的发送和接收者必须互相明 白信息里的数据才能完成一次有意义的交换,这就是消息传递层s o a p 要解决的 问题。s o a p 协议架构在x m l 的基础上,提供了一个松散的、分布的环境中对等 的交换结构化、类型化的调用信息描述从而完成远程过程对象调用的一个简单 机制。它本身并没有定义任何的语义,如编程模型或特定语义实现,只是通过 一个模块化的包装模型和对模块中特定格式编码的数据的重编码机制来表示应 用语义。 3 3 5 服务描述层 如果服务的提供者和请求者能够成功的进行交互,它们之间必须拥有更高 一层的认识,描述层就提供了这样一种认识机制。w e b 服务的接口和实现均由 w s d l 来定义。使用w s d l 开发者可以描述一组w e b 服务的操作,包括每个操作 的输入,输出参数与网络和数据编码结合的不同方式。 3 3 6 服务发布发现层 描述了绑定和调用某个w e b 服务的详细信息,但是服务请求者如何才能取 得某个w e b 服务的w s d l 文档呢? 此时,就需要有一个发布发现层u d d i 来实现 w s d l 文档的发布和查找。作为目录技术的标准协议u d d i ,提供使用基于性能的 查找来发现w e b 服务或者商务伙伴的功能,服务请求者可以按照服务的类型和 服务的性能来发现所需要的w e b 服务。 3 3 7 服务流程层 单独的w e b 服务只能完成单一的工作,而事实上的商务活动,都不是单一 的操作所能够完成的,需要一系列的操作步骤,并且在大部分情况下,这些操 ,q 川大学硕士学位论文 作不是相互独立的,而是需要互相协作,从而形成一个服务流程。 随着一些新的w e bs e r v i c e 的标准被开发出来,一些新的标准规范比如 w s x l ( w e bs e r v i c ee x p e r i e n c el a n g u a g e ) 、w s s e c u r i t y 、w s i n s p e c t i o n 等 也已经扩展到w e bs e r v i c e 的协议栈,在这里我们就不详述了 3 4w e bs e r v i c e 的开发周期 w e b 服务开发生命周期包括了设计和部署以及在运行时对服务注册中心、服 务提供者和服务请求者每一个角色的要求每个角色对开发生命周期的每一元 素都有特定要求开发生命周期有以下四个阶段: 构建:生命周期的构建阶段包括开发和测试服务实现、定义服务接口描 述和定义w e b 服务实现描述。可以通过创建新的w e b 服务、把现有的应用程序 变成服务和由其它w e b 服务和应用程序组成新的w e b 服务提供w e b 服务的实现。 部署:部署阶段包括向服务请求者或服务注册中心发布服务接口和服务 实现的定义,以及把w e b 服务的可执行文件部署到执行环境( 典型情况下,w e b 应用程序服务器) 中。 运行:在运行阶段,可以调用w e b 服务。在此,w e b 服务完全部署、可操 作并且服务提供者可以通过网络访问服务。现在服务请求者可以进行查找和绑 定操作。 管理:管理阶段包括持续的管理和经营w e b 服务应用程序。安全性、可 用性、性能、服务质量和业务流程问题都必须被解决。创建w e b 服务的过程与 创建其它任何类型的应用程序的过程别无二致。事实上,它是设计应用程序, 编写并部署代码、最终实际使用应用程序的一个周期。 3 5w e bs e r v i c e 的发展方向 在现阶段,w e bs e r v i c e 还有很多方面需要完善,其中许多与它赖以生存 的开发环境有关。以下就是一些显著的问题: 四川大学硕士学位论文 1 ) 可靠性:某些w e bs e r v i c e 的主机可能将比其他主机更可靠,那如何 测量和传递这个可靠性呢? 当w e bs e r v i c e 主机暂时脱机时会发生什么情况 呢? 如何寻求其他供应商的可替代服务呢? 2 ) 安全性:某些w e bs e r v i c e 将在公开情况下可用而没有保护措施,但 大多数与商业相关的服务将使用带认证的加密通信。s s l 上的h t t p 往往能够提 供基本的安全性,但有个别服务需要更高颗粒度级别。w e bs e r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 有关饭店用工合同的模板4篇
- 改造工程项目方案(3篇)
- 封开拆迁工程方案公示(3篇)
- 顶楼防腐工程方案(3篇)
- 电气工程报价方案(3篇)
- 灵山县Y057线龙垌至六吉公路沙梨江桥危桥改造工程(非辐射类)环境影响报告表
- 猫基本药品知识培训内容课件
- 猫咪睡觉课件
- 安全教育的培训需求课件
- 工程安全管控方案(3篇)
- 双人合作开店协议书范本
- 质量员模拟题含答案
- 以史为帆明方向+少年立志向未来+课件-2025-2026学年上学期主题班会
- 2025上海科技馆事业单位工作人员招聘10人笔试备考题库及答案解析
- 钢结构工程施工安全管理方案
- 医疗机构员工服务规范手册
- 2025年黑龙江省龙东地区中考英语真题含答案
- 医疗器械生产质量管理规范2025版
- 学堂在线 军事理论 章节测试答案
- 《工程勘察设计收费标准》(2002年修订本)
- 冷弯薄壁型钢房屋结构介绍ppt课件
评论
0/150
提交评论