已阅读5页,还剩69页未读, 继续免费阅读
(管理科学与工程专业论文)web服务可靠消息传递和容错机制的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 摘要 随着信息化进程的不断发展以及各大企业对企业运行环境,特别是对企业关 键性业务稳定性要求的不断提高,企业迫切需要在网络环境下实现跨平台、便于 通信、松散耦合、易于管理的异构应用系统的信息交互,w e b 服务就是在这种环 境下出现的新技术。 由于目前基于i n t e m e t 的应用所基于的操作系统、网络环境千差万别,就可靠 性和容错性而言,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 服务可用性和在关键性业务领域的应用具有实际的意义。 关键词:w e b 服务;可靠性:容错:日志系统 英文摘要 r e s e a r c ho fw e bs e r v i c e sr e l i a b l em e s s a g i n g a n df a u l tt o l e r a n c em e c h a n i s m a b s t r a c t w i t ht h ed e v e l o p m e n to fi n f o r m a t i o na n d e n t e r p r i s e s i m p r o v i n gr e q u i r e m e n t st o , t h eo p e r a t i o n a le n v i r o n m e n t ,e s p e c i a l l yt h es t a b i l i t yo fm i s s i o n c r i t i c a le n v i r o n m e n t ,t h e e n t e r p r i s e su r g e n t l yn e e dt om a k eh e t e r o g e n e o u sa p p l i c a t i o n ,w h i c hc a nf a c i l i t a t et h e c r o s s p l a t f o r mc o m m u n i c a t i o n ,l o o s e l yc o u p l e d ,a n de a s i l yt om a n a g e di n f o r m a t i o n i n t e r a c t i o nw i t h i nt h en e t w o r ke n v i r o n m e n t a n dt h i sl e a d st ot h en e wt e c h n o l o g yo f f o rt h ed i f f e r e n c e so fi n t e m e tb a s e do p e r a t i n gs y s t e ma n dn e t w o r ke n v i r o n m e n t , w e bs e r v i c e sc a nn o t p r o v i d em a t u r es u p p o r t f o r c o m p l i c a t e da p p l i c a t i o no f h i 曲一a v m l a b i l i t y , i nt e r m so fr e l i a b i l i t ya n df a u l t t o l e r a n tp e r f o r m a n c e u pt on o w , t h e r e i sn o tw i d e l ya c c e p t e ds o u n dm e c h a n i s m i nt h en e wr e s e a r c h ,t h er e l i a b l em e s s a g e t r a n s m i s s i o na n dt op e r f e c tt h es e r v i c eh a sb e c o m et h eh o ti s s u e b a c k e d 诵ma p p l i c a t i o no fc r o s s p l a t f o r md i s t r i b u t e ds y s t e m ,a n db a s e do n e x i s t i n gw e bs e r v i c e ss t a n d a r d s ,t h i sp a p e rm a k e sr e s e a r c h e so nt h er e l i a b l em e s s a g e t r a n s m i s s i o nm e c h a n i s ma n df a u l t - t o l e r a n ti s s u eo fw e bs e r v i c e ss y s t e m ,b a s e do n w h i c ha na l a r ms y s t e mf o rw e b - s e r v i c e b a s e de n t e r p r i s es e r v e rl o g s t h i sp a p e rm a k e sr e s e a r c ho nt h ef o l l o w i n gs u b j e c t : f i r s t l y , t h i sp a p e rr e s e a r c h e st h er e l e v a n tc o n c e p t so fw e bs e r v i c e s ,t e c h n i c a l c o m p o n e n t s ,w e bs e r v i c e ss t a n d a r d s ,a n dp o i n t so u ti m p e r f e c t i o n so ft h ec u r r e n tw e b s e r v i c e s s e c o n d l y , t h i sp a p e rr e s e a r c h e sf a u l t - t o l e r a n tm e c h a n i s mi nd i s t r i b u t e ds y s t e m , a n dm e a s u r e so fi t f a u l t - t o l e r a n tf r a m e w o r ko fh i 曲a v m l a b i l i t y , b a s e do nt h ew e b s e r v i c e s ,i sd e s i g n e d 谢t hr e l a t e dt e c h n o l o g y a n dt h r e ef a u l t - t o l e r a n ts t r a t e g i e s d e s c r i b e dt h ec o m p o n e n t sa n do p e r a t i n gp r o c e s si nd e t a i l 英文摘要 f i n a l l y , t h i sp a p e ri n t r o d u c e st h ee n t e r p r i s e s r e q u i r e m e n t st or e l i a b i l i t ya n d t o l e r a n tp e r f o r m a n c eo fi t sl o gs y s t e m ,a n dd e s i g n sl o ga l a r ms y s t e m 谢t 1 1r e l i a b l e m e s s a g et r a n s m i s s i o nt e c h n i q u ea n df a u l t t o l e r a n tt e c h n i q u e t h i sp a p e rm a k e sr e s e a r c h e so nt h e r e l i a b i l i t y a n ds e r v i c e f a u l t - t o l e r a n t p e r f o r m a n c eo fw i t h i ns y s t e mm e s s a g et r a n s m i s s i o nb a s e do nw e bs e r v i c e st e c h n i q u e , w h i c hw i l lb eah e l pt oi m p r o v et h ew e bs e r v i c e sr e l i a b i l i t ya n di t sa p p l i c a t i o ni n m i s s i o nc r i t i c a la r e a k e yw o r d s :w e bs e r v i c e s ;r e l i a b i l i t y ;f a u l tt o l e r a n c e ;l o gs y s t e m 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成硕士学位论文= = 坠鱼腿釜亘塞澄星篮遭塑查垡扭鱼数婴窒= = 。除论文中已经 注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在文中以明 确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已经公开发表 或未公开发表的成果。 本声明的法律责任由本人承担。 论文作者签名:当茑翟彝年月 日 学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连海事大学研究生学位论文提交、 版权使用管理办法,同意大连海事大学保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本 学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位论文。 保密口,在年解密后适用本授权书。 本学位论文属于:保密口 不保密口( 请在以上方框内打“ ) 论文储躲、名伽师签名:庐物堀 日期:年月日 w e b 服务可靠消息传递和容错机制的研究 第1 章绪论 1 1 引言 在经历了多年的发展和应用实践之后,w e b 服务作为一种日趋成熟的技术, 已经被绝大多数的软件厂商和企业用户所接受。许多软件企业将w e b 服务作为企 业的核心战略,许多企业利用w e b 服务建设企业的生产环境。所谓w e b 服务,指 的是利用与系统平台以及编程语言无关的数据表示的通信协议实现互操作的应 用。利用w r e b 服务技术,公司可以保证其应用程序能够与业务伙伴和客户的应用 程序进行通信。w e b 服务技术将会对以后的组织产生深远的影响【。 尽管许多公司刚刚开始实现w e b 服务,但其基本思想已经存在许多年了。早 在1 9 9 9 年,惠普公司就第一次引入了w e b 服务的概念。惠普公司的e s p e a k 平台。 使开发人员可以建立电子服务,这是与w e b 服务相似的程序单元。但是,e s p e a k 的基础技术具有专属性质,使这个平台没有得到广泛的行业支持【2 】。2 0 0 0 年6 月, 微软公司正式提出了w e b 服务的概念,并把w e b 服务作为n e t 项目的关键组件。 现在,几乎每个主要软件厂家都在推出w e b 服务工具和应用程序【3 】。随着w 曲服 务的发布,许多人认识到这个技术可能为分布式计算领域带来一场革命。 w e b 服务与过去的分布式计算技术相比,最大的优点是w e b 服务采用开放标 准。由于w e b 服务需要支持不同平台和应用的程序间的通信,因此标准化与相互 操作性至关重要。万维网联盟是定义w e b 技术的组织,和其他标准组织一起保证 w r e b 服务协议与规范的开放性、免费性以及不同厂家实现版本之间的相互操作性。 w e b 服务带来了许多的好处,但同时也给系统开发人员带来了许多挑战。关 键问题是,推动w e b 服务的s o a p ,w s d l 与u d d i 标准仍然处于草案形式。s o a p 与w s d l 标准由w 3 c 发布,而u d d i 还没有提交到标准化组织。许多公司想等 待基础技术稳定之后再采用w e b 服务。采用w e b 服务的另一个阻力是没有一个可 靠的运行标准,w e b 服务通常允许直接访问公司应用程序,从而使公司网络遭遇 黑客、病毒之类的安全威胁。w e b 服务使用的核心标准( 如s o a p ) 设计时没有提供 系统的安全性特征。另外,在许多关键领域,软件的设计者和开发者都需要考虑 第1 章绪论 系统容错性的问题。对于许多关键性业务( m i s s i o nc r i t i c a l ) f l 勺领域来说,w e b 服务 的可靠性和容错性问题严重妨碍了其在更多领域内的应用。此外,软件故障、系 统宕机等问题也给w e b 服务的可靠性应用提出了不小的挑战【。 1 2 研究的目的与意义 在现代生活中,计算机系统被广泛地应用于各个领域。无论是在金融、电信、 政府机关等涉及到广大人民群众的生产生活的关键性部门,还是在大家平时的日 常生活中,都广泛的需要计算机技术对信息进行处理。随着计算机应用的不断发 展,人们对计算机系统可用性的要求越来越高。人们不仅希望能够保障关键性业 务数据信息的完整,而且希望分布式的数据应用能够不问断或者在最短的时间内 自动恢复【4 】。 根据i d c 针对提供信息服务的网站系统所做的调查结果显示:三分之一到一 半的成本用于系统失效的恢复和为防止系统失效所做的准备上。目前管理良好的 服务器的可用性只达到9 9 9 到9 9 9 9 ,也就是说每年有8 到8 0 小时的停机时间。 以电子商务系统为例,专门研究关键业务软件和电子商务的市场研究公司s t a n d i s h g r o u pi n t e r n a t i o n a l 进行了一项研究,数据表明,对于一个事务处理系统,与停机 相关联的成本大约为每分钟2 5 0 0 美元,相当于每小时1 5 万美元。事实上,与营 业高峰期停机相关联的成本估计为每分钟7 8 0 0 美元,也就是每小时4 6 8 0 0 0 美元。 尽管这些数字对于一次停机的损失只提供了保守的估计,但确实从侧面说明了企 业为什么要重视保持系统2 4 x 7 小时的正常运行。所以提高系统可用性成为现代工 商业应用的迫切需要【5 j 。 由于w e b 服务标准的开放性与复杂性,目前还没有一种可以完全解决包含 w e b 服务的可靠性和容错性等涉及w e b 服务相关领域的解决方案。最初,w e b 服 务被设计成一个信息的发布与查询的开放的平台,在这种环境中,w e b 服务的响 应速度,可靠性与安全性并没有成为开发者优先考虑的要素。 对于需要运行于关键性业务环境中的实时系统,具有十分严格的时间确定性 要求和可靠性要求,进而需要高性能的容错技术的支持。由于实时系统受工作环 w e b 服务可靠消息传递和容错机制的研究 境限制,可用资源十分有限,因此提高实时系统的资源利用率是实时系统设计需 要解决的重要问题。同时,如何优化实时系统的设计,降低设计人员的劳动强度, 提高工作效率,提高系统的设计质量,也是研究所面临的重要问题。如何在实时 系统中同时满足上述要求是极富挑战性的工作,同时也是十分复杂的工作。 1 3 国内外研究现状 根据i d c 最近发布的研究报告显示,w e b 服务厂商的重点已经从产品创新转 到构建完整的w e b 服务方案上来,它们更加重视服务的稳定、安全、管理问题以 及消息和事件的处理。一些采用w e b 服务的先行者正从概念验证阶段转向大规模 实施。在未来5 年内,w e b 服务仍将保持迅猛的增长势头,2 0 0 9 年规模将达到1 4 9 亿美元【6 】。 为了保证系统通信机制的正常,i b m 和微软等公司共同起草了w e b 服务可靠 性规范( w s - r e l i a b l e m e s s a g i n g ) ,该规范用于保证w e b 服务中的消息序列、消息发 布和消除重复的消息,使i n t e m e t 上传递的w e b 服务消息更加可靠。 这种增强可靠性的特征是建立在简单对象访问协议( s o a p ) 基础上的,不依赖 于底层的传输协议。该规范将使不同的系统能够独立于平台、厂商地进行可靠的 “ 互操作。专门研究x m l 和w e b 服务技术的z a p t h i n k 公司认为:除了安全性和管 理之外,可靠性是w e b 服务需要面对的第三大问题,而这份协议将有助于解决这 一问题【7 1 。, 然而,在保证系统的可用性方面,仅仅依靠w e b 服务的可靠性规范是远远不 够的,一个成功的网络系统要求在7 x 2 4 小时全天候运营中没有停机时间。业务系 统一旦涉足全球市场,就可能遇到急剧增长的信息访问量,即使是对最坚固的平 台来说这也是一个严峻的考验。为了防止系统或者网络故障对企业业务的影响, 众多软硬件厂商提供了众多的容错机制,以保证系统可以满足绝大多数用户业务 的需要。 1 4 本文的主要工作 本文以企业级用户在日常工作中,经常会用到的利用日志维护服务器的工作 第1 章绪论 为背景,以w 3 c 制定的w e b 服务标准以及扩展规范为基础,通过对可靠的消息传 递和服务容错机制的研究,设计了一个运行于关键性业务的基于日志的警报系统。 根据课题研究的背景及意义,论文主要分为三个部分进行展开: 第一部分对论文涉及到的相关技术问题进行了论述,该部分为整个论文的研 究做好了铺垫,主要内容包含以下两点: ( 1 ) 介绍了w e b 服务作为软件技术发展的新阶段所具有的优势,与创建w e b 服务相关的各项技术,w e b 服务的缺点以及为了弥补这些缺点各组织提出的相关 的补充规范。 ( 2 ) 介绍了w e b 服务可靠的消息传递的相关技术,比较了各种分布式计算技 术,并对可靠的消息传递技术的运行机制进行了深入的研究。 论文第二部分主要研究了分布式系统的容错机制,系统容错性的评价指标, 并利用相关技术设计了基于w e b 服务技术的容错模型等相关的内容。主要包含以 下几点: ( 1 ) 介绍了系统故障定义、分类和容错技术的相关概念,以及评价系统容错性 能的若干指标。 ( 2 ) 讨论了基本的容错机制,并对三种常见的容错机制进行了比较。 ( 3 ) 利用具有容错特性的w e b 服务系统建立了一个具有容错特性的h a w s 的模型,该模型通过使用三种常见的容错机制来提高系统的可用性,最后对该模 型进行了验证。 论文第三部分主要研究了在关键性业务领域的日志系统的需求,并利用可靠 的消息传递技术和容错技术设计了用于企业服务器故障警报系统,该部分为整篇 论文的核心部分。主要包含如下内容: ( 1 ) 介绍了企业日志系统的可靠性和容错性的需求,基本模型以及其他相关的 技术。 ( 2 ) 利用该技术,本文设计了一个基于w r e b 服务的,具有可靠性消息传递和 系统容错特性的企业服务器警报系统的应用。 w e b 服务可靠消息传递和容错机制的研究 第2 章w e b 服务及可靠的消息传递研究 l p e t e rd e u t s c h 在其经典著作产生分布式计算中八个不可靠性的因素中 首先提出了可靠性的概念。其中提出,若想要实现分布式系统的可靠性,需要满 足以下八个条件【8 】: ( 1 ) 网络是可靠的; ( 2 ) 网络延迟为0 ; ( 3 ) 网络具有足够的带宽; “) 网络是安全的; ( 5 ) 网络的拓扑结构不变; ( 6 ) 网络需要有管理者; ( 7 ) 网络的传输损耗为o ; ( 8 ) 网络是同质的。 w e b 服务作为一种典型的分布式系统,对于系统可靠性的需求,也必须满足 这的八个条件。 在网络的可靠性方面,为了实现系统的松耦合,w e b 服务采用了最常见的 h t t p 协议作为网络传输的协议。由于其只能保证消息在网络层实现可靠的传递, 并不能满足w e b 服务在应用层的可靠性需求,w e b 服务的请求者与提供者之间也 不能了解对方是否顺利完成了消息的传递。由此可见,w e b 服务所依赖的网络环 境往往是不可靠的,为了解决以上的问题,w e b 服务社区提出了w s r m 规范。 w s r m 规范在一定程度上解决了w e b 服务可靠性中的一部分问题,包括网 络传输和信息传递的可靠性等方面的问题。本论文将对w s r m 规范的相关知识进 行研究。 在产生分布式计算不可靠性的八个因素中,还有一些问题是w s r m 规范所 不能解决的,比如( 5 ) 网络的拓扑结构不变和( 6 ) 需要有管理者。当网络出现严重的 故障时,w s r m 规范只提供了信息重发的机制,当服务本身出现问题时,就往往 没有办法保证w e b 服务的可靠性。为了解决这个问题,本文引入了w e b 服务容错 第2 章w e b 服务及可靠的消息传递研究 性的概念,具体来说,w e b 服务的容错性是针对w e b 服务系统为了防止严重的网 络故障导致服务不可用而采用的冗余技术,w e b 服务容错性主要利用多个服务的 “备份”来满足w e b 服务可靠性的要求。在具体操作的时候,如何在多备份系统中 选取响应服务的结点也是本文研究的重要内容之一,下一章将主要研究关于w e b 服务容错性的相关内容。 2 1w e b 服务的基本概念 2 1 1w e b 服务简介 软件业最终会赞同这样的前景:跨多个操作系统、编程语言和硬件平台集成 软件应用程序不可能由任何一种专门的环境来解决。传统上,这个问题一直是一 个紧耦合问题。在w e b 服务出现之前,在大多数系统上,采用的是固定的接口, 但如果环境或需要改变,这样的系统显然缺乏灵活性或适用性聊1 0 1 。 w e b 是使应用程序可以与平台和编程语言无关的方式进行通信的一项技术。 而w e b 服务是一个软件接口,它描述了一组可以在网络上通过标准化的x m l 消 息传递来进行访问的操作。它使用基于x m l 语言的协议来描述要执行的操作或者 与另一个w e b 服务交换的数据。一组以这种方式交互的w e b 服务在面向服务的体 系结构中定义了一个完整的w e b 服务应用程序。 w e b 服务所使用的x m l 语言可以用真正的与平台无关的方式来描述任何数 据,以便跨系统交换数据。所以,从技术层面上讲,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 服务的平台无关性和实现访问独立性,软件行业需要遵循一些 作为标准的技术【l 。其中包括: x m l :在w e b 服务环境中各层之间进行传递的默认数据格式。 s o a p :封装和交换信息的默认协议。 w s d l :描述w e b 服务的语言。 图2 1 引自w 3 c 协会发布的w r e b 服务架构文档,该图显示了这些技术在实际 的工作环境中是如何发挥作用的【1 2 1 。 p ,簪,| 图2 1w e b 服务架构 f i g 2 1a r c h i t e c t u r eo fw e bs e r v i c e s t e r 在图2 1 中,p r o v i d e r 是提供服务的应用程序组件,r e q u e s t e r 是使用服务的 客户端程序。很多其他技术也会参与到交互中,该图只显示了在w e b 服务环境中 必需的核心技术组件。 2 1 2w e b 服务的基本操作模型 从概念上讲,w e b 服务可以看作是与标准的通信模型具有许多相似之处的简 单操作模型,如图2 2 所示。这个模型定义了三个独立的角色,即w e b 服务提供 第2 章w e b 服务及可靠的消息传递研究 方、服务代理方和用户的角色以及其它们之间的关系。这些角色和关系定义如下【1 】: 图2 2w e b 服务的基本模型 f i g 2 2b a s i cm o d e lo fw e bs e r v i c e s 服务提供方:负责开发和部署w e b 服务,并通过服务代理方发布服务。 服务代理方:负责服务的注册和查找w e b 服务。服务代理方列出服务请求方 查找和订阅所需服务的类型、描述和位置。 服务请求方:负责服务的调用。服务请求方通过服务代理方的帮助找到w e b 服务,调用所需服务,并通过服务提供方执行这些服务。 w e b 服务是面向应用程序的,在理想的情况下,对最终用户应该是透明的。 w e b 服务提供了一种应用开发的新途径,即无需在系统中实现所有的功能,只需 简单地访问适用的w e b 服务来执行所需的操作即可满足需求。 w e b 服务的主要优点包括: ( 1 ) 系统平台的无关性:w e b 服务使用的h t t p 和x m l 己经是互联网上通用 的技术,任何能够访问i n t e r n e t 的平台都可以访问w e b 服务。任何与i n t e m e t 建立 连接的应用程序都可以向i n t e r n e t 上的任何一个w e b 服务发送x m l 格式的s o a p 消息,同时也可以接收来自w e b 服务的s o a p 消息。 w e b 服务可靠消息传递和容错机制的研究 ( 2 ) 功能复用:功能复用的应用程序设计具有在自己的程序中使用其他的系统 提供的功能的特性,通过使用外部厂商提供的w e b 服务,开发人员能够利用外部 厂商己经实现的功能。这意味着可以使用较少的时间开发与解决具体的业务问题 无关的应用程序,使用第三方的技能和经验,可以使软件厂商集中精力处理业务 问题。 ( 3 ) 服务器的中立性:w e b 服务的接口是符合标准的,而且在w e b 服务和客 户机之间信息传递使用了x m l 语言和h t t p 协议。因此,开发w e b 服务所使用 的程序设计语言和服务器软硬件是无关的。w e b 服务所在的服务器可以运行 u n i x ,w i n d o w s 或其他的操作系统,而执行w e b 服务功能的软件可以是j a v a 、 c 群或任何其他语言编写的。 ( 4 ) 拓展业务:企业允许消费者以更加集成化的方式和以用户为中心的方式访 问他们,当允许其他的应用程序使用企业应用程序中的功能时,企业便可以将精 力集中在自己的特殊产品上。 2 1 3w e b 服务核心技术介绍 w e b 服务的本质就是要以标准化的方法,实现企业内部或者企业间各个不同 的系统间的调用和集成。为了实现这个目的,服务对象需要满足以下三个要求【l 】: ( 1 ) 服务b 要以一种标准化的语言告诉服务a 它能提供什么服务,以及如何 调用它的服务,它的服务在哪可以找到,这就是w e b 服务的服务描述。 ( 2 ) 服务a 要以一种标准化的通信方式向服务b 发出请求信息,信息中包含 服务a 需要调用什么服务,并提供响应的参数。服务b 在接收请求并完成响应后, 会以同样的标准化的通信方式告诉服务a 相应的结果。 ( 3 ) 为了向更多用户提供服务,服务b 可以把自己所提供的服务注册到相应 的服务代理方c 。 以上三个要素实际上就对应了w e b 服务的三个核心技术:w s d l 、s o a p 和 u d d i 。如图2 3 所示。 第2 章w e b 服务及可靠的消息传递研究 图2 3w e b 服务的技术组件 f i g 2 3c o m p o n e n t so fw e bs e r v i c e s 以下是w e b 服务三种核心技术组成的简要介绍。 ( 1 ) 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 服务描述语言是一种使用 x m l 对w e b 服务进行描述的语言,其主要功能是使w e b 服务提供者能够将自己 的服务生成相关的文档,发布给服务的使用者。文档的内容包括服务的传输方式、 服务方法的接口、接口参数和服务路径等内容。服务使用者可以通过这个文档来 创建相应的请求信息,通过h t t p 传递给w e b 服务提供者;w e b 服务在完成服务 请求后,将信息返回服务请求者【1 引。 w s d l 通过定义一套x m l 的语法来描述网络服务的方式满足了这种需求。 w s d l 把网络服务定义成一个能交换消息的通信端点集。一个w s d l 文档将服务 定义为一个网络端点的集合,或者说端口的集合。在w s d l 里面,端点及消息的 抽象定义与它们具体的网络实现和数据格式绑定是分离的。 以抽象的层级来看,w s d l 有三个主要的元素: 数据型态的定义 抽象操作 服务链接 上述的主要元素可以在个别的x m l 档中作详细叙述,在各种组合中引入, 最后来产生网络服务描述,或者是被一起定义于单一的文档当中。数据型态的定 w e b 服务可靠消息传递和容错机制的研究 义决定信息的结构和内容,抽象操作决定信息内容的操作方式,而服务链接决定 携带信息至目的地的网络传输。 ( 2 ) s o a p ( s i m p l eo b j e c t a c c e s sp r o t o c 0 1 ) 简单对象访问协议是w r e b 服务的标准 通信协议。s o a p 以x m l 形式提供了一个简单、轻量的用于分布环境中交换结构 化和类型信息的机制。s o a p 本身并没有定义任何应用程序语义,如编程模型或特 定语义的实现,实际上它通过提供一个有标准组件的包模型和在模块中编码数据 的机制,定义了一个简单的表示应用程序语义的机制。这使s o a p 能够被用于从 消息传递到各种系统【1 4 】。 s o a p 定义包括三个部分: s o a p 封装结构定义了一个整体框架用来表示消息中包含什么内容,谁来 处理这些内容以及这些内容是可选的或是必需的。 s o a p 编码规则定义了用以交换应用程序定义的数据类型的实例的一系列 机制。 s o a pr p c 定义了一个用来表示远程过程调用和应答的协定。 虽然这三个部分都作为s o a p 的一部分一起描述,但它们在功能上是相交的。 特别是封装和编码规则是在不同的域中定义的,这种模块性的定义方法增加了简 单性。而且,这个规范还定义了两个协议的绑定,描述了在有或没有h t t p 扩展 框架的情况下,s o a p 消息如何包含在h t t p 消息中被传送。 s o a p 的下述特性决定了其可以作为分布式系统数据交换的通信协议,运用 s o a p 可以解决分布式环境下,系统执行远程呼叫时,数据交换所产生的问题: s o a p 传递数据内容,都要符合x m l 格式,并且运用x m ls c h e m a 做验 证,因此有较好的扩充性。 s o a p 使用x m ls c h e m a 定义的数据标准,统一了数据交换时的数据类型。 s o a p 使用h t t p 当作通信协议时,由于传递的是纯文本数据,可以轻易 的穿越防火墙。 s o a p 属于信息传输量较少的标准协议,因此可以减轻服务器的负担。 ( 3 ) u d d i ( 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 g r a t i o n ) 统一描述、发现和集 第2 章w e b 服务及可靠的消息传递研究 成协议,定义了w e b 服务的发布与发现的方法,是一种用于存放和检索w e b 服务 元数据的注册库和仓库,创建了注册服务的规范,以方便服务提供者和服务者使 用者发布和利用服务。 u d d i 提供了一种基于分布式的商业注册中心的方法,该商业注册中心维护 了一个企业和企业提供的w e b 服务的全球目录,而且其中的信息描述格式是基于 通用的x m l 格式的【1 5 】【1 7 1 。 但由于各种原因,比如很难为w e b 创建有意义的分类信息,u d d i 并没有能 够实现“成为所有w e b 服务的元数据注册库”这一目标,也没有能在多数w e b 服务 交互中发挥作用。尽管u d d i 未能使其成为w e b 服务事实上的标准注册库,但它 的确令自己成为了众多解决方案的备选之一。任何用于w e b 服务元数据的注册库 都应支持u d d i 所具有的基本特性。但许多w e b 服务工具包可以接受从i n t e m e t 上某处导入的w s d l 文档,并根据它生成一个兼容的s o a p 消息,以实现与被发 布的服务进行成功的交型1 8 1 。 图2 4 显示了在w e b 服务中w s d l 、s o a p 和u d d i 三者的关系【1 9 1 。 图2 4w e b 服务核心技术的关系 f i g 2 4r e l a t i o n s h i po fw e bs e r v i c e sc o r ec o m p o n e n t s w e b 服务可靠消息传递和容错机制的研究 2 2 补充的w e b 服务规范 w e b 服务只是为分布式系统提出了一个能够实现系统松耦合的简单构架,并 没有充分考虑到系统的安全( s e c u r i t y ) 、事务( t r a n s a c t i o n ) 、可靠性( r e l i a b i l i t y ) 、编制 ( o r c h e s t r a t i o n ) 和原数据管理( m e t a d a t am a n a g e m e n t ) 等方面的问题,因此,众多机构 提出了一系列补充的w e b 服务规范。只有广泛采用这些补充规范,大规模的w e b 服务才能成功1 8 1 。 补充的w e b 服务的规范主要是针对下列领域提出的: ( 1 ) 元数据管理:w s - a d d r e s s i n g 、w s m e s s a g e d e l i v e r y 、w s p o l i c y 、w s p l 、 和w s m e t a d a t a e x c h a n g e 等规范定义了相互协作的w e b 服务如何获取彼此支持的 功能以及相互的操作。 ( 2 ) 安全:w s s e c u r i t y 、x m ls i g n a t u r e 和x m le n c r y p t i o n 等规范确保服务 的保密性、消息的完整性、认证及授权访问等。 ( 3 ) 可靠性:w s r e l i a b i l i t y 和w s r e l i a b l e m e s s a g i n g 规范用于确保消息被传 递和处理。 ( 4 ) 通知:w s - e v e n t i n g 和w s - n o t i f i c a t i o n 用于定义更多的消息交换模式。 ( 5 ) 事务:w s t r a n s i t i o n s 系列规范和w s c o m p o s i t ea p p l i c a t i o nf r a m e w o r k 用于将多个独立w e b 服务的工作协调起来,形成更大范围的服务。 ( 6 ) 编制:w s b p e l 和w s c d l 用于将多个w 曲服务组合起来,执行更大 的工作单元。 为了使系统获得足够的可用性,往往需要使以上规范中的多个可以同时使用, 因此需要这些补充特征是可组合的,将这些规范进行组合的主要手段之一是在现 有的s o a p 消息中增加新的报头,或者将它们插入新的s o a p 消息中。 2 2 1w o b 服务可靠的消息传递规范 对于某些任务关键性业务的应用来说,接受w e b 服务的最大障碍在于w e b 服务是在不可靠的网络传输协议上进行消息传递的,缺少可靠的消息传递机制。 通过为w e b 服务采用一种可靠的消息传递规范,并在s o a p 消息中增加可靠性报 第2 章w e b 服务及可靠的消息传递研究 头,w e b 服务将具有更为广阔的应用范围,应用的开发也将得以简化。 w e b 服务可靠性是独立于其传输协议进行定义的,它被定义为一系列以组或 序列交换的s o a p 消息、以及一些对消息确认和消息编号进行控制的处理规则, 确保每个消息都被收到,而且可以消除重复消息,当然,整体应用的可靠性仅凭 可靠的消息传递是不够的,消息传递只是综合解决方案中的一个部分而已。系统 整体的可靠性还需安全性、事务性及执行环境的参与。 消息传递包括s o a p 以及它的各种消息交换模式。一般来说,可靠的消息传 递是保证一个或多个消息被按顺序接收的机制2 0 】【2 1 1 。可靠的消息传递规范包括: w s - - r e l i a b i l i t y w s - - - r e l i a b l e m e s s a g i n g 这两个规范非常相似,而且它们也提供了类似的功能。它们都使用s o a p 报 头在请求者与提供者之间交换消息分组与识别信息,用于确保s o a p 消息可以在 不可靠的网络上进行可靠的递送。可靠的消息传递是一种用于进行有保证的递送、 无重复的、消息次序正确的s o a p 消息交换协议。可靠的消息传递的原理是,为 一组消息设定相同的i d ,根据消息号将消息编组,并依据顺序号进行排序。 请求者 图2 5 可靠消息传递的基本架构 f i g 2 5a r c h i t e c t u r eo fr e l i a b l em e s s a g i n g 1 4 w e b 服务可靠消息传递和容错机制的研究 有了可靠的消息传递,消息队列就可以自动从某些传输层的错误状态中恢复; 如果没有可靠的消息传递,应用就必须自己解决这类问题。可靠的消息传递还支 持在i n t e m e t 上连接两种不同的私有消息传递协议。 图2 5 是可靠的消息传递的基本架构,在传输协议和将执行一系列消息确认 的应用之间加入了一个可靠性层,用于实现可靠性策略,比如单次有保证的消息 递送。确认s o a p 请求者可以知道提供者是何时收到消息的,以及已经收到了哪 些消息。先将消息保存在文件或数据库中,然后再进行消息发送,当可靠性层确 认接收者已成功接收消息后才删除原始消息。 2 2 2w e b 服务的安全性规范 w e b 服务除了给企业级别的应用带来了许多崭新的优点以外,也带来了许多 新的安全隐患。创建和管理一个安全的w e b 服务环境涉及到处理各种i n t e m e t , x m l 及w e b 服务安全机制。一般的方法是相对直接的,它们考虑了【5 】【1 8 】: 传输级安全:比如防火墙、虚拟专用网、基本认证、不可否认性及加密等。 消息级安全:比如使用认证令牌来验证请求者的身份、使用授权来对提供者 的服务进行访问控制。 数据级安全:比如用于保护数据免遭窜改的加密与数字签名机制。 环境级安全:比如管理、登录、审核以及构建信任关系和通信模式。 由于w e b 服务代表的是一种抽象的接口与消息传递层,它不能也不应该包含 某些支持w e b 服务运行的底层平台中的安全机制。在w e b 服务环境中重复操作系 统级保护,比如内存保护、文件或设备保护等,甚至网络级保护的做法是错误的。 一般来说,要免于遭受各种挑战与威胁,就必须在传输层、w e b 服务层和数 据层实现安全解决方案。该安全解决方案必须与底层的执行环境进行相互映射, 以确保贯彻所定义的安全策略。如果没有定义安全策略的话,就应该在发生错误 或违反策略时记录审计日志。 传输层安全之上是消息级安全,其安全保护是由w s s e c u r i t y 框架及相关安全 规范提供的。w s s e c u r i t y 框架定义了包含保护消息所需信息的s o a p 报头。但是, w s s e c u r i t y 并不是一个完善的系统级安全的解决方案,例如安全令牌的交换、密 第2 章w e b 服务及可靠的消息传递研究 钥管理、授权、信任、联盟及保密等方面的问题还没有得到有效的解决,不过 w s s e c u r i t y 是解决这些高级需求的基础,一些有关这些领域的规范正在制订之中 【9 1 o 2 2 3w
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 华北水利水电大学《制药仪器分析实验》2024-2025学年第二学期期末试卷
- 武汉工商学院《信息系统运行管理与维护》2024-2025学年第二学期期末试卷
- 2026江西九江市瑞昌市投资有限责任公司下属瑞昌市瑞兴置业有限公司招聘3人考试参考试题及答案解析
- 2026河南信阳市潢川县老城街道非全日制公益性岗位招聘5人笔试备考试题及答案解析
- 2026广西百色市右江区中小企业服务中心招聘见习生1人笔试模拟试题及答案解析
- 2026南通通明集团有限公司招聘3人笔试备考试题及答案解析
- 2026云南惠民劳务服务有限公司客户联络中心坐席人员招聘10人笔试模拟试题及答案解析
- 县政府内部控制制度汇编
- 政府接待内部管理制度
- 企业关务内部审计制度
- 施工现场安全交接单及管理流程
- 数控机床维修维护手册
- 吸痰器使用流程
- 手术分级目录(2011年版)
- 2025年村支书选聘考试题库(附答案)
- DB31∕T 310022-2024 长大桥梁无人机巡检作业技术规程
- 人工智能通识 课件 模块6 赋能职场数据洞察:AI助力
- 林业法规与执法实务课件
- 技术投标培训课件
- 2025年海关总署公务员面试模拟题集及答案解析
- HDPE分子量分布调控对产品性能的影响及工艺优化
评论
0/150
提交评论