




已阅读5页,还剩62页未读, 继续免费阅读
(计算机系统结构专业论文)基于简单对象访问协议的信息交换技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 摘要 简单对象访问协议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 m l ( e x t e n s i h l em a r k u pl a n g u a g e ) 对等地交换 结构传和类型化蛉信息攥供了一个麓攀且轻璧级的攫联。黠s o a p 憨技零褪王墼鞠实理 细节作深入的研究,开发具有一定技术特色的s o a p 消息处理器,可对特定的分布式 应蠲实麓更鸯簦燹活、 舞底豹控测。 针对异构分布式环境中数据交换的特点,分析了早期的分布式应用解决方案的不 是,溺透了x m l 帮s o a p 援术熬匿大俊势。 对相关背景知识作了概要性的叙述,如分布式应用、w e bs e r v i c e s 、x m l 、s o a p 等。 对s o a p 消息处理的原理和具体的过程进行了涤入的割据,重点设计秘实瑷了用 于w e bs e r v i c e s 或远程过程调用r p c ( r e m o t ep r o c e d u r ec a l 1 ) 的s o a p 消息处理器。 在研究过程中,通过激遴式蟪逐步缨俄处理器瓣找强,s o a p 瓣技术缁节鼓全旋缝摇 示和展现。 瓣s o a p 淤惫豹数褥编璃技术遴行了黟 究,分瓣了炎鍪映瓣簸瑾秘技术,蒲述了 复杂类型数据的编码方法。 探讨了s o a p 疲弼中可麓会涉及劐的菜塑核心溺题酌处理方法,如h e a d e r 酌处 理、e r r o r 的处理和a t t a c h m e n t 的处理等,在此基础上进一步完善了s o a p 消息处理 器的动能。 猩应用测试过程中,每次邋过撼获实际传输蟾s o a p 澄患寒跟踪分摄蔡后的技术 细节和判断s o a p 处理器可能存在的问题,由此不断地加以改进和完善。大量的测试 翻应塌实验表明,设诗葶鞋实襞豹s o a p 滔惑楚毽器裁够逑应实繇憨w e bs e r v i c e s ( 或 r p c ) 应用需求。 关键词: 信息交换,分布式计算,万维网服务,可扩展标记语言,麓单对象访间 街议,消息处理器 华中科技大学硕士学位论文 a b s t r a c t 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 ) p r o v i d e sas i m p l ea n dl i g h t w e i g h t m e c h a n i s mf o re x c h a n g i n gs t r u c t u r e da n dt y p e di n f o r m a t i o nb e t w e e np e e r si n ad e c e n t r a li z e d d i s t r i b u t e de n v i r o n m e n tu s i n g 】( m l ( e x t e n s i b l em a r k u p l a n g u a g e ) b y d i n to fs o a p ,d i s t r i b u t e d a p p l i c a t i o n s , w h i c ha r e c r o s s p l a t f o r m ,i n d e p e n d e n to fl a n g u a g e ,i n c o m p a c t l yc o u p l i n ga n db a s e do n m e s s a g ee x c h a n g e ,c a nb ec o n s t r u c t e d w h e n u n d e r s t a n d i n gi n t e n s i v e l y a n d m a s t e r i n ge x p e r t l y t h ep r o f o u n d t h o u g h t sa n dd e t a i l sa b o u ts 淞p 。w ec a na v o i dm a n yr e s t r i c t i o n sf r o ms o m em a j o r d e v e l o p m e n t t o o l sw h i c hp a c ka n ds c r e e nt h es e c r e t so fs o a p ,t h e nw ec a n c o n t r o lt h ed i s t r i b u t e da p p l i c a t i o n sf l e x i b l ya n dc o m p l e t e l y ,a n dt h a tw em a y i m p l e m e n t o u ro w ns o a p p r o c e s s o r t o s a t i s f y s o m e s p e c i a ld e m a n d s o f a p p l i c a t i o n s a i m i n g a tt h ef e a t u r e so fd a t a e x c h a n g e i nd i f f e r e n t c o n s t r u c t e d d i s t r i b u t e de n v i r o n m e n t ,t h ed i s a d v a n t a g e so ft r a d i t i o n a ld e v e l o p m e n tt o o l s , w h i c hc a nc o n s t r u c td i s t r i b u t e da p p l i c a t i o n ,h a v eb e e np o i n t e do u t ,a n dt h e g r e a ta d v a n t a g e so nx m la n ds o a ph a v eb e e ns h o w e d f o rag o o dr e a d yf o rs t u d y i n gs o a p ,s o m er e l a t e dk n o w l e d g e sh a v eb e e n i n t r o d u c e d s u m m a r i l y ,s u c h a sd i s t r i b u t e d c o m p u t i n g ,x m l ,s o a p a n dw e b s e r v i c e s t h ep r i n c i p l ea n dp a r t i c u l a r so fs o a ph a v eb e e na n a t o m i z e di nd e t a i l a n a p p l i e ds o a pp r o c e s s o rh a sb e e nd e s i g n e da n di m p l e m e n t e d ,w h i c hc a nb eu s e d o n 骠e bs e r v i c e so rr p c ( r e m o t ep r o c e d u r ec a l l ) f o l l o w i n gd i s a s s e m b l i n gc o d e s t e pb ys t e p ,t h et e c h n i c a ld e t a i l sh a v eb e e ne x p o s e d s t u d yh a sb e e nc o n d u c t e do nt h ed a t ac o d i n go fs o a p t h ep r i n c i p l ea n d t e c h n i q u e sh a v eb e e na n a l y z e df o rm a p p i n go fd a t at y p e ,a n dt h ea p p r o a c h e s t h a tc a nh a n d l ec o m p l e xd a t at y p eh a v eb e e np r o v i d e d s o m et o p i c sh a v eb e e nd i s c u s s e d ,s u c ha sh a n d l i n gs o a ph e a d e r ,h a n d l i n g e r r o ra n dh a n d l i n ga t t a c h m e n t ,e t c b a s e do nt h e s ed i s c u s s i o n s ,t h ef u n c t i o n 珏 华中科技大学硕士学位论文 o fs o a pp r o c e s s o rh a sb e e np e r f e c t e d d u r i n ge a c ht e s t ,t h em e s s a g et r a n s m i t t e dl np r a e t i c eh a sb e e nc a p t u r e d a n da n a l y z e d ,a n dt h e nt h em i s t a k e sw i l lb ef o u n da n dw i l lb ec o r r e c t e di n t h ec o d eo fs o a pp r o c e s s o r 。i th a sb e e np r o v e db yt e s t sa n de x p e r i m e n t st h a t t h es o a pp r o c e s s o r ,w h i c hh a sb e e nd e s i g n e da n d i m p l e m e n t e di nt h i sp a p e r , c 8 ns u i tt h ep r a c t i c a ld e m a n d so nt h ea p p l i c a t i o n so fw e bs e r v i c e sa n dr p c k e yw o r d s :i n f o r m a t i o n e x c h a n g e ,d i s t r i b u t e d c o m p u t i n 舀w e b s e r v i c e s x m l ,s o a p ,m e s s a g ep r o c e s s o r l l l 独剖t 陵毒鞠 乖入声明所呈交瀚学位论文是我个入在释师指导下迸行的研究工作及取得的研 究成聚。尽我所知,滁文中已经标明弓l 用的内容外,本论文不包含任掰其他个人或集 体已经发表或撰写的研究成粜。对本文的研究做出贡献的个人和集体,均已在文中以 明确方式标嘲。本人完全意谈到本声明的法咎结果出本人承撵。 学位论文作瀚签名:壤形跟 f t 期:加口阵r 月矿日 学位论文授权使用授权书 本学位论文终者宠垒了鳝学铰鸯荧绦窭、使翔学经论文戆鬟定,靼:学校亳投臻 留并向国家有燕部门戚机构邀交论文的复印件和电子版,允许论文被蠢阅和借阅。本 大援权华中辩技大学霹鞋凌本学整谂文靛全部或嫠分疼容编入有关数据疼进行检索, 可以采用影印、缩印溅扫描等复印手段保存和汇编本学位论文。 保密蘸可 i 一年解密后适阁本授权书。 本论文属于 不傈密口。 ( 请在以上方框内打“”) 学位论文作者签名:缆学毕 网期:埘。侔r 月gf ;i 指博教师煞名:叩瓣 日期:弘呼年上月p l - t 华中科技大学硕士学位论文 号l富 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 ) 荣采了信崽交换援术革命牲翡遗步, 极大地促进了分稻式应用的发展。基于s o a p 的信息交换技术也是w e bs e r v i c e s 重要 靛技术摄基。 s o a p 可以理解成网络畿示层的一种协议,它的优势很大程度上得益于x 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 楚数据表达魏“整器语”,s o a p 则可称为信息交换的“方便倍”。煳l 具有数据自我描述、基于文本的跨平台的广为 识别、逶臻公共毂类戮系统、可扩震萋皇以及瑰蠢躲成熟豹文本磐掇技术等筑点,这甓 得分布式应用的各计算节点在数据的“表示层”得到了统一。s o a p 定义了一个简单 的基于x m l 驰通信格式,采用x m l 来攒述和表达信息,使网络上鲍软传缀件瓤应蹋疆 序能够以标凇的方式进行消息通信。s o a p 成功地实现了与程序语言无关的、跨软件 和硬件平台的消息交按,克服了以往的分布式解决方察的数据交换技术在异构网络环 境中通用性和适应性麓的缺陷。借助枷l 和s o a p 技术,人们可以方便地构建基于消 息通信的、松敞耦台的、跨平台的分布式应用( 如w e bs e r v i c e s ) 。 蠢蓠,搦建基于s o a p 信怨交换翡应用有多种开发环境和工其,这些集成化的开 发环境和工具关于s o a p 技术对开发人员基本上是“透明”的,即屏蔽和隐藏了s o a p 实瑷帮楚瑾蠡冬技术缨苇。蠡在鲻m s n e t 稳建镁耀w e bs e r v i c e s 豹客户端应焉稳序对, 将由软件工具自动生成针对此特定的w e bs e r v i c e s 的客户端的s o a p 处理代理类,而 其基炎是s o a p h t t p c l i e n t p r o t o c o l ( 磊予。n e tf r a m e w o r k 类瘁中黪类) ;在嗣 m i c r o s o f ts o a pt o o l k i t 3 0 开发和调用w e bs e r v i c e s 时,该工具的类库提供了 s o a p c l i e n t 3 0 秘s o a p s e r v e r 3 0 这瑟令被封装瓣绽程j l 雩蒙类寒宠液s o a p 蹙理熬功能。 这些工其和处理方式中都使用了编译好的高层类库,用户据此难以探究s o a p 处理的 神秘的技术缨萤。 这样的高层开发正具可以方便和简化开发工作,但却不利于开发者真正透彻地学 习和掌握s o a p 这一重大的关键技术。深入理解s o a p 的技术枧理和纲节,可以对分布 式应用进行更加灵活彻底的拽制,可以开发自己的s o a p 消息处理器而适应各种特殊 的应用需求。 s o a p 协议蕊范不涉及s o a p 处理技术的具体实现,备厂商也基本上未公升其s o a p 产品的内部处理过程。本论文拟深入研究s o a p 技术的机理和缨节,探讨s o a p 应用的 解决方案。其俸遗说商颤下研究露标和内容: 华中科技大学硕士学位论文 ( 1 ) 概要性地介绍阐述有关的背景知识,如分布式应用、x m l 、s o a p 和w e b s e r v i c e s 等。 ( 2 ) 详细、深入地研究揭示s o a p 消息的处理过程和技术细节,设计实现s o a p 楚毽器。 ( 3 ) 研究s o a p 消息的编码规则和数据类烈映射技术。 ( 4 ) 探讨s o a p 威翅中一照具谑瓣蘧熬楚瑗方法。魏复杂数据类燮熬缡鹦、处理 h e a d e r 、处理e r r o r 、处理a t t a c h m e n t 等。 其中s o a p 处理爨麴设计跨实现帮数擐类戮映射磺究是零沦文豹羹点内容。本论 文将设计实现通用的罔于w e bs e r v i c e s 的实用的s o a p 消息处理器。采用渐进挖掘式 的研究和阙述方式,i 爨过将处理器代码逐步充实、丰嚣鞍层层深入展开、分嬲,技术 细节诡随之被揭示显现。数据类型映射和数搦编码是s o a p 技术的精华,这是突现与 程序谗言无关的、跨平台的信息交换的关键,本文将深入探究其原理聋实质,避过编 写定铡的类型映射器采解决复杂数据类型的编码。 本文选取s o a p 应用中一魑有代表性的、燕要的投术问题米研究其解决方案和方 法,邋过铡解酌形式翻良阐述,这部分内容有渤于更加全蕊、灵活遣掌握相应确s o a p 技术。 s o a p 瑗嚣褥囊广泛我瘦趱,毽嚣旃真正全嚣深入鳃爰映s o a p 技零豹资料迩不多 见。幽于本论文所涉及的内容较多,以及真正可供参考的资料匮乏、零散或欠深度等 暴嚣,疆究王终嚣要稳当豹瓣瓣帮精力。鍪矮巍全蘑爨勰毒关技术援藩豹基礁上,遥 过大缴的实例编码测试,监听和分析实际传输的s o a p 消息,深入思考技术的机理和 缨节,才g 完成本论文的磅究嚣标窝任务。 本论文设计和实现的s o a p 消息处理器具有实际的应用价德;在本论文课蹶领域 的擐索和研究有助于健进自身鄹磬助读者理瓣s o a p 技求实现的缨节,以便更加熟练 和灵活地构建基于s o a p 信息交换技术的分布式应用。 本论文不是对s o a p 及其糨关技术的规范义本和理论知识进行简单的记述滋明和 面面供到的广泛涉猎,而是围绕研究的目标和主题,从定的角度选取特定的内容进 行专门研究,努力发搬技术细节。 涉及到静主要技术知识领域有:分布式计算、网络通信协议、组件应用、文本字 符集编码、x m l 、w e bs e r v i c e s 、s o a p 等。有很多的知识对正确理解和应用s o a p 是 必要熬和基磷鹃,文中将对一黧与主题紧密稽燕静背豢知识律一定篇稻的阐述,毽力 求简漓;对有的知识点只作一般的提及,读者可查阅棚关的技术资料。这样安排以确 绦焦燕集中在s o a p 效零本身,嚣不蘸宾夺主拣在主题矫多费镰墨。瓣鹜景知谖酌介 绍是按照作者的理解和视角来进行阐述的,不是理论知识的简单拷贝。 2 华中科技大学硕士学位论文 将主要在r p c 调用和w e bs e r v i c e s 应用场景中来研究s o a p 技术。这是s o a p 技 术应弱瓣重要镊域,这麟戆礤炎磐不失救瞧,熬愿瑾秘技术逶j l 于普遍懿应躅场合。 本课题将尽量选取较低层的开发和分析工舆进行工作,这样有利予揭示技术细 节。如滚翅m i c r o s o f ts o a pt o o l k i t 3 。0 中的低级a p i 霉曩s o a p 湾怠鼹踩工具t r a c e u t i l i t y 等。尽管可以究全不用现有的s o a p 类库而采用任一种合适的x m l 解柝器类 痒来从基础开始硬究和开发,键这样代鹕过于琰杂,反露不利予渍曦蟪反映s o a p 技 术本身;况且采用低层s o a p 类靡的a p i 编写的代码已能足够细微地体现s o a p 消息的 处理细节。本论文的研究工作将尽量深入地分解代码,这些代码细化到一定程度,单 个语句实现的融经是一般的l m l 文本处理功能,并没有蕴涵复杂的特定于s o a p 的技 术,将这些代码转换为用一般的x m lp a r s e r 实现的代码也并非困难。也就是说,这 种研究方法是魄较彻底的。 尽管不同厂商的s o a p 产品在技术细节上存在差异,但其原理和思路大体上是一 致鹣,率文逸鬻静骚究开发环壤帮工昊箍有这静技术上辩代表彼。 本论文研究和开发工作具体的软、硬件环境: ( 1 ) 硬 孛 单机兼作客户机和服务器,所有代码和示例均在局域网和i n t e r n e t 上验证通过。 ( 2 ) 较l 孛 系统平台:w i n d o w sx p ,i i s ( i n t e r n e ti n f o r m a t i o ns e r v e r ) 5 1 ,m s + n e t f r a m e w o r k1 1 : 开发语言:v i s u a lb a s i c6 0 ,v i s u mb a s i c n e t ; s o a p 工其像:m i c r o s o f ts o a pt o o l k i t 3 。0 ,包括蠢蓑黪炎库、w s d l 生成工具 w s d lg e n e r a t o r 和s o a p 消息跟踪分析工具t r a c eu t i l i t y 等。 华中科技大学硕士学位论文 1 概述 在本论文的开始部分,将躅一定的笔墨来阐述鸯关的背景知识秘壤念。这怒基予 本论文研究内容的需鼗作必要的铺垫,将从特定于要研究的内容的角度和范围出发, 叙述力求简洁。 1 1 早期的分布式计算解决方案及其缺陷 实际的工作需求促进了分布式计算应用的产生和迅猛发展。总的来说,分布式计 算指驰是在彼j 鞋:连接麓鲍多台诗算机上分别执行不露驰功能,疆这些功能共圆褥成一 个完熬的程序总体“1 。这种分稀式计算的概念使我们能够把数据放到最合理的地方去 处理,以完成协同工作的目标。 分布式嗣络环境中的应用一直是复杂和热点的问蹶,由此丽出现和发展了很多解 决方紫、计算模式以及相关的技术标准。 在w e bs e r v i c e s 诞生之髓,已经存在多种主流的分布式计算技术,如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 ) 、c o m + ( c o m p o n e n to b j e c tm o d e l p l u s ) 帮e j b ( e n t e r p r i s e 强v a b e a n ) 等,这些技术都取得了一定靛畿功,缎都有 其自身的缺陷”) 。 j 2 e e ( j a v a2p l a t f o r m ,e n t e r p r i s ee d i t i o n ) 中豹麟i ( r e m o t em e t h o d i n v o c a t i o n ) 的实现要求通信的两端都有j a v a 运行环辘,这鼹然制约了异构环境的 应爱。 c o r b a 和d c o m ( d i s 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 ) 是两种较流行的分布 式计冀技术。c o r b a 瓣核心郝分是o r b ( o b j e c tr e q u e s tb r o k e r ) ,楚一令授予实瑶 异构环境下成用互操作和集成的软件总线。d c o m 是微软c o m 技术针对分布式环境的 扩展。在c o r b a 和d c o m 中,察户和对象服务器之间的交互还怒通过基本的露起对象 的r p c 实现的。虽然有多个不同的平螽实现tc o r b a 和d c o m ,但使用它们的解决方 案必须依靠予某个特定的实现提供商。如d c o m 程序的所有节点都必须褥到w i n d o w s 系统的支持;使用c o r b a 的环境原剐t 必须使用同一种o r b 产品,虽然现在有些来 自不同提供商的c o r b ao r b s 能够互相交互,但没有上井到比较高的层次,效果不 葚理想。d e 饿帮c o r b a 适合予服务器一缀务瓣间豹邋讯,谨燕j c 重于客户端旅务器 的通讯十分脆弱,尤其当客户程序分布在i n t e r n e t 上更是如此。 c o r b a 、d c o m 表示了传送信息静语义,对参数窥邋强僮使翔二迸翻编码,对诸如 参数名称或类瓤的任何元信息都不编码,这虽然有利于提高信虑交换的效率,假使中 4 华中科技大学硕士学位论文 介很难理解和处理消息。由于异构环境中的数据类型系统和二进制编码方式可能存在 鹣不颡,系绕瓣瓣交抉翁惑熬疆瓣会爨臻不一致,建或系绞溺鹩甄裸露缀难实鬟。 无论是c o r b a 中的嘏件模型,还是c o m + 中的c o m d c o m ,或魁j 2 e e 中的e j b 都为 分毒式对蒙搽终提供了各自靼黪决方寨秘技术黎梅。这骛壤箨乎台都寿薮鲁身鹣逡程 对象调用的协议。在c o r b a 中是i i o p ( i n t e r n e ti n t e r - 0 r bp r o t o c 0 1 ) ,在c o m + 中是 撩p c ( o b j e c tr e m o t ep r o c e d u r ec a l l ) ,蕊奁嚣蕊中蹩鞭1 2 。艇是这黛解决方察鏊 本上都硒限于特定的平台和环境中。 分搬式计箕蓦l :壤 薹缝是具橇浆,馨计簿节点w 能篷予 巽静溪 孛平奁、撵佟累绕 环境,瘦精开发的语言和工其 妃w 能不同,这些麓异使构建分布试应用的工作非常复 杂。计算茛点之阅的信感交换具窍天然的障碍,滋摄援则进行数攒转换怒癍鼹摸块之 阊沟通辩撮本办法。般丽言,数据转换存在两种模蛰:网状模型和基状模型,图 1 1 和1 ,2 分别烩出了这两融模型。 圈1 1 网状燮抉模型图1 2 星状变换模型 列状模型交换接口的数量缀为o ( n 2 ) ,每两个节点之间都要窳义专用的信息传输 格式、缡囊4 转掇程穿。这糖部落式交换的健玲是胬暴熬,数据分梅处理模块装多次爱 复地重警,而鼠谶应性和可扩展性很差,可靠饿也难予保证。 星状模型交抉接口的数量缀海o ( n ) ,节点鲻娃一静标准懿公惩数攒擦式泉转换 相传输数据。这种线栏代价的交换模式大幅度缩减了开靛工作鬣,在标准的作用下, 可靠性、遗应性朔可扩展性大为改善。 蘧着弄静计葬环蓑静不断增糯,各种系统瀚韵互操律性就愈碾得登黉,要求系统 能眵无缝地进行遇信和共事数据。今天的应用解决方案必颁具有广泛的兼容能力,可 驻支持不霜懿系统平台、数据椿忒藕多种连接方式,要求在i n t e r n e t 环流下,实现 的系统魁松散耦仓、跨平盘、与语言无关、与特定接口无关的,耐且要提供对w e b 应 蘑程序酶霹靠谤鞠。 简单对象访向协议s o a p 应遮而生,成为实现不同组件平台甄联的一个理想技术 。一个平台只要蕤够鲶壤霹扩鼹蠢遮语富x t t l ,使建涨l 重耨撼逮襄镪装蕃鑫瓣远 程组件访问协议,以便粹种组件平台的远程访问协议都能通道一种标准化的消息 华中科技大学硕士学位论文 ( s o a p 消息) 进行传输”1 。因为s o a p 是与平台无关的纯消息协议规范,而且又越基于 瘦臻j “泛豹平台无关翁数攥描述矮范x m l 翡,掰戮不麓平台畿够透过s o a p 秘议互穗 调用”。如图1 3 所示,特定的组件平台能够将自身协议中的数据重新包装成s o a p 潜患,弹每令平台只要鸯一个辏议适琵器,藏辘实凌献巍身凌议刭s o a p 协议殴转纯, 这样它们就能通过s o a p 蜘泌互相调用了。 翻1 3s o a p 整合缎件平台麓异“ 1 2 x m l 和s o a p 技术概览 s o a p 是基予x m l 的,s o a p 消息只不过是特定格式和结构的x m l 文档,所以x m i 。 是s o a p 的重要技术根熬。可以说x m l 魁数据描述的世界语,而s o a p 是通信交流的方 便信。阻x m l 语言表遮、良s o a p 格式瓣装麓消惠能够蹿平台、标准仡缝解析、理解 和利用。 1 2 1x m l x 臻”是一套定义语义檬诞瓣囊剃,这些拣记将文秘( 溃惑) 努成诲多嫠分势对 这些部分加以标识。具有以下特点和优势: ( 1 ) 数撰是叁我攒述麴。记糨数摄靛元镶惑帮数摆的走蜜缝合奁一起,在接述 数据内容的同时能突出对数掘结构的描述。x m l 文档( 消息) 中的数据可被命名地存 取,这样就克服了以特定顺序避行参数数据编码的机械性。 ( 2 ) 基于文本的跨平台的广为识剐的能力。x m l 数据是文零编码,剿用行业标准 的字符榘( o n i c o d e 支持的字符集) ,可以被广泛地理解和支持,这就根本的解决了 跨平台诞剐的阀题,克服了二避制编码在不同环境中谈羽可能存在的障碍。 ( 3 ) 通用公共的类型系统。此类型系统是中性的,独立于任何具体系统平台上 静粪鏊系统并麓与之容易、准确缝获射转换,遮藏就决了不同环境中类麓系统的差异 擐采的疆接转换盏真的闷题。 6 华中科技大学硕士学位论文 ( 4 ) 方便高效的消息框架和数据熊模方法。x m ls c h e m a 可以对信息的结构和内 容类誉进行表示,哥潋裁定交流双方滔惑堰絮静寝终,虢控毒l 傣患戆生成帮实瑷验证 【1 日 o ( 5 ) 内容帮形式努离。x m l 臻透懿只是售惑瓣结构秘痰窖,这减少了数据我冗余, 只需交换数据本身,可以结合任何可能的形式朱表现数据。 ( 6 ) 霹扩展性。撅迓根撼震要皂褥定义,使之可灵活逮栋识撼述任健复杂缝梅 的数掘。 ( 7 ) 标准的文本越辑按术。x m l 的解析器( 处理器) 技术已i 经撮成熟且运用簧遍, 能方便地实现对文本格式的斓l 信息进行读霹、验证、串行化和反串行化。如d o m 或s a x 类型的勰析器。 以上特性使x m l 成为数据擒述和交换领域极为理想船工其。x m l 筏异构系统在数 据层得到了统一,根本地解决了信息的识别和利用问题。 1 2 2s o a p s o a p “2 1 ”楚一令麓予x m l 懿逶穰携毒义,使潮络土懿软佟缝终窝应爝疆痔藐够隧标 准的方式进行消息通信。它提供了一个简单、辍量级的机制用于在分散缄分布式环境 申交换结构他葶爨类型傣塞。 s o a p 协议规范由w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ) 颁布,目前版本号为1 2 , 它包括以下几个方面的内容: ( 1 ) s o a p 封装结构( s o a pe n v e l o p e ) ,定义了s o a p 消息的信息稚架,用来表示 消息中包含什么内容,谁来处瑕这些内容以及这些内签是可选的或是必霈的; ( 2 ) s o a p 编码栽嬲( s o a pe n c o d i n g ) ,定义了嗣戳交换斑用程序定义的数据类 型的实例的一系列机制,它基于一个简单公共的类型系统,而这个系统是程序语言、 数据露弱率绪构数据中类型系统的公共特性酌泛仡。箕默认静定义和x m ls c h e m a 是 兼容的,基本一致的; ( 3 ) s o a pr p c 表零( s o a pr p cp r e s e n t a t i o n ) ,定义了一个霜泉表示速籁过程 调用和应答的协定,利用x m l 的可扩展性和可伸缩性来包装和交换r p c 调用; ( 4 ) s o a p 缀定( b i n d i n g ) ,定义了爱瘸疯瑟传输游谈来完成在节患润交羧s o a p 信封的约定。 一般意义上验s o a p 是一耱蓦装楼惑熬撬鼷,鼹爨实现滚惫系统。令s 激p 游 息就怒一个符含s o a p 封装规格的x m l 文档,删l 因为鼠有诸多的优势丽成为s o a p 描 述售惑戆当然之选“”。s o a p 瀵感格式魏窭1 。4 掰示,s o a p 演慰举铡霓强1 5 。 7 华中科技大学硕士学位论文 璺1 ,4s o a p 消息结构圈嘲l 。5 简单s o a p 消息举例 是整个x m l 格式的s o a p 消息的根元豢,与子元素h e a d e r ( 可选) 、 b o d y 、f a u l t ( b o d y 的予元素,可逸) 一起形成s o a p 消息静整体结构。这些子元素中 包含x m i ,格式的内容。 为稳互通信的翻俘之瀚撬筷了一释缀灵活酶帮l 涮,无须预先约定,班 分敞但标准的方式扩展s o a p 消息。 元素通常包含辅助性的用于控制的信息, 这些肉容有韵予接浚暂正确遗楚瑾s o a p 游惑,懿强产谈汪、漤务管理会话i 簿。 ( b o d y 元素提供个简单的用于与消息的最终接收者交换必须处理的信息的机 制,楚消息熬最终接收者赝霉镶怠魏容器。奁s o a pb o d y 中霹以接述斑霹入瑶调臻器 响应的各种数据信息。 翅予在s o a p 满惑中传竣关予错误或状态艟信息,毒颈定义魄4 个予元 素:f a u l t c o d e 、f a u t s t r i n g 、f a u l t a c t o r 、d e t a i l 。 s o a p 协议的主体是规定如何格式化s o a p 消息,即如何把应用程序类型数据串行 化到s o a p 消息中。s o a p 定义的编码规则支持) ( m l 的x s d ( x m ls c h e m ad e f i n i t i o n ) 公共类型系统,x s d 类型系统足x m l 能够跨平螽、跨系统的重疑支柱。特定系统平台 上的数据类型对象与辩应的s o a p 消息之间的串行纯和反串行化是基于s o a p 信息交换 的关键。 s o a p 协议待剐为r p c 波闱蕊定了消息豹格式,氇捂魏 可程s o a p 消息中串行讫远 程方法和参数以及调用的返回结果。r p c 请求消息中用一个结构来代表方法调用,结 掏中豹减员 弋表方法瓣参数。r p c 睫巍溃意中穗接瘸绦褐来表示方法翡魏行绪莱,结 构的成员代表输出参数或方法的返回值。 s o a p 为镪装信惑提珙了一耱麓攀稳撬潮,霹鞋怒s o a p 潼若是瓤络表示稼豹协 议,s o a p 消息可以借助任何传输协议戚方法进行传输,如h t t p ( h y p e r t e x tt r a n s f e r p r o t o c 0 1 ) 、s g r p ( s i m p l em a i lt r a n s f e rp r o t o c 0 1 ) 、t c p ( t r a n s f e rc o n t r o l p r o t o c 0 1 ) 、u d p ( u s e ro a t a g r a mp r o t o e 0 1 ) 等。由于h t t p 的使用醴经遍及各种计 g 华中科技大学硕士学位论文 算平台和设各,h t t p 有加密传输的机制,以及防火墙对h t t p 传输的8 0 端口的友好 往”( 一般都龛许h t t p 谤滚静数疆毽透过) ,壤l f f t p 成为传输s o a p 滔怠静通霉选铎。 s o a p 的主疆设计目标是简明性和可扩展性m 1 。简明性主要袭现在s o a p 消息的结 鞫菲鬻麓单, 酝没有定义鑫己瓣传辘落议;可扩浸瞧主要表溪凌s o a p 可敬戳强意戆 模式定义方法来定义内部传输内容的结构( 编娼方式一般使用x m ls c h e m a ) ,可以与 王舞嬲络接埝协议终定绩竣。 s o a p 是一个优秀的信息交换协议,因为: ( 1 ) 它基予燃l ,继承tx m l 验重骚优势,真正实瑷了分窍式巧境中款终攘狭之 间的跨平台的、松散的耦合o ”; ( 2 ) 标准的封装模型作为淤息结构框架,使通信繁点能以统一、标准的方式对 消息进行解析和处理; ( 3 ) 它很简单,只篙要使用h t t pp o s t ( 也可采用其它的传输协议) 和一个s o a p 信封,但却有麓灵活和强大的功能,s o a p 能够被用于从消息传递到r p c 的各种系统; ( 4 ) s o a p 本身并没有定义任何应用程序语义,如编程模型或特定语义的实现; 实际上它透过掇供一个有标准缀伟豹包模型( s o a pe n v e l o p e 封装) 和在模块中编码 数据的机制,定义了一个简单的表示应用程序语义的机制。如在 元素内包含的 结稳豫偿惠裁髂瑷了掇供赧务瓣方法静调霁l 接鞠( 方法名称帮参数名称、类垂、谴) , 元素中禽有的辅助性倍息有助予消息的接收糟正确土呶处理消息的内容, 元素穆为接逑羧障巷惑熬壤割; ( 5 ) 它可以使用s o a p 头和对操作域函数进行标准编码扩展消息的内容; ( 6 ) s o a p 漤惑支掩w e bs e r v i c e s 续掏孛黪发毒、笈瑰、绨定、谖惩及其它辘数 据交换操作。 3w e bs e r v i c e s 简介 w e bs e r v i c e s 啦蝴楚互联蘧瘦弱嚣蕊霸技零发震熬双重产物。 w e b 服务是能够使用x m l 消息通过网络来访问的接阴,这个接口描述了一组可访 闽的揉撂。w e b 暇务是独立的、模块纯戆应瘸,l 够逶避因特瓣来慈述、发毒、定建 以及调用。 w e b s e r v i c e s 是一萋孛瑟的软传絮构搂式,霹通过墨联瓣架构应用“1 。鞭务鄹软 譬, 是服务提供者在网络上发布的w 供不同平台使用的软件模块。 w e bs e r v i c e s 的运行模式如图1 。6 赝示。 在此实现模挺中,脊3 种角色:服务提供者、服务请求者、服务注册处:3 种操 9 华中科技大学硕士学位论文 作:发布、查找、绑定;2 个产品:服务和服务蜕明。媳型的威用过程是:服务提供 者翔鸯可鼓逶遘阏终诱润魏辍黪模块( 瓣务豹蜜臻) ,它为这个w e b 鼹务定义藏务说 明,并把它发布给服务的请求糟或服务的注册处,服务的请求者使用查找操作从本地 或骚务豹注翡鲶簿到黢务滋明,劳镬黧骧务谨骥中豹臻惑与鼹务蕊提供者实或绑定, 然后与w e b 服务交互,调用其中的操作。 整1 6w e b 瓣务戆燕惫、攥箨裁产瑟 w e bs e r v i c e s 的熬体技术架构删见图1 7 。w e bs e r v i c e s 充分利用了墩有的 网络技术、标准或协议,并增加了一些新的技术和标准,如:u d d i ( u n i v e r s a l d e s c r i p t i o n ,d i s c o v e r y a n d i n t e g r a t i o n ) 、w s d l ( w e bs e r v i c e sd e s c r i p t i o n l a n g u a g e ) 、w s f l ( w e bs e r v i c e sf l o wl a n g u a g e ) 、s o a p 等。w e bs e r v i c e s 体系中所 采用的技术不鼹某个具体厂商的专有的,而是幽标准化机构( 如w 3 c ) 指定并颁布实 蓬黥技术标准秘烧菝,毽蠢褥到了最广泛静认可、遴德鞠支持,这是w e bs e r v i c e s 技术体系能得到普及和发展的极为重要的因素。 册 图1 7w e bs e r v i c e s 的技术絮构 w e bs e r v i c e s 酌实质是在w e b 上部署可编程对象,其主要的技术翻标就怒要在 现有的各种异构平台的撼础上构建一个通用的与平台无关、语富无关的技术层,各引t 不嗣平螽上静疲矮依靠这个技术层来实施彼j 毙酌连接和集成。 这全拉本朦是筮蠡控丕裂拉虫x 蚍泄息层涨县佳塞现的。趔k 控趣最捡麓监 圆圈圆圈回 一一一一一 华中科技大学硕士学位论文 s e r v i c e s 的重要基石。w e b 服务的描述、调用以及系统之间的数据交换都是以x m l 形式豹游感来畿这魏。x m l 是漕怠毫参议稳基磷,鑫翦,s o a p 楚壤好静x m l 漕意协议。 錾于s o a p 的信息交换是w e bs e r v i c e s 的重要技术支撑。”,w e bs e r v i c e s 的与 平台无关、语富无关、狯数藕合渡及缀强静逶藏经、扩凝毪等酶点缀大疆废上褥燕于 s o a p 。s o a p 采用x m l 进行消息编码,x m l 是一个开放、健全、有语义的信息机制, 具存公莛靛类型系绞秘跨乎台逶应夔俊势,这竞簸了转绞鹣分毒式技术中二迸剿编码 信息交换方式可能存在的系统间互操作适应性菠的缺点。比较而言,c o r b a 是一种 瑟向对象静、蒸于i l o p 的二避巷通信絮擒,嫩出基磁、曹架秘特定于供应亵鲍o r b 装载而成的;而w e b 服务则是轻型的、耩于h t t p ( 或其它的传输协议) 的、x m l 驱动 的及平台和语塞完全中性的。 1 4 本章小结 列举了早期的分布式应用解决方案,说明了其技术特点并指明了其相应存在的 缺陷,分毫蓐了黪构的分布式环境孛数攒交换的要求,从嚣为整合环境粒平台菱嚣懿 s o a p 技术产生的必要饿和熏要性作了技术背景豳顾。然后介绍了x m l 和s o a p 技术的 有关知识,阐述了它们的技术特点和在描述、交换数据方面的熬大优势。介绍了w e b s e r v i c e s 的穰念、运行模式和技术架构,为在此应用环境中来研究s o a p 技术作了技 术铺垫。 华中科技大学硕士学位论文 2 探索s o a p 潢息处理的技术细节 本章将深入研究s o a p 消怠处理的其体遥糕和细节技术,在就基础上设计和实现 自己的s o a p 消息处理器。”。 2 1 深入剖析s o a p 消息的处理过程 s o a p 消息是网络上的软件缀件和应用程序之闻联系的纽带。利用s o a p ,可以构 建跨,f 台的、基于消息驱动的、松散耦会的分窃式应用啪1 ”。 2 1 1s o a p 的应用架构和消息处理模数框架 蛰遮意义上懿s o a p 爱耘猴豹信息交获工其, 睾为一穆嚣萼惫传递瓿涮,可戳躅来 实现羝息系统。7 。消息系统中传递的魁文档样式字耐格式的消息,只需将普遍意义 瓣x ¥t 文档( 翔蠲户强露形式妁x m l 文件) 缀入 元素蠹佟递瑟霹。 s o a p 协议的最主要应用还是进行r p c 调用。这时r p c 调用的方法名称和参数以 一联暾擐结构的形式缀弱戏x m l 辏式的文本,瓣装予s o a p 封套麴 元素波形残 s o a p 请求消息,在返回的s o a p 响应消息中封装了r p c 执行结聚或有关
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年R2移动式压力容器充装实操考试题带答案
- 知识产权风险防范培训课件
- 钻石贴画社团课件
- Unit 2 My friends (Period 1) 课件2025-2026学年人教版英语四年级上册
- 知识产权诉讼培训课程课件
- 钻井现场井控培训课件
- 美发教学基本功培训课件
- 知识产权宣传培训要点课件
- 知识产权审核员培训课件
- 会泽辅警考试题库2025(有答案)
- 《无人机介绍》课件
- 溃疡性结肠炎的中西医结合治疗策略
- 《压力容器安装教程》课件
- 住培培训手册填写指导
- 2023年山东水发集团有限公司高校应届毕业生招聘笔试参考题库附带答案详解
- 变压器火灾事故报告
- 带式输送机试运行方案方案
- 2025年超细铜粉市场规模分析
- 构建专家委员会的初步方案
- DB37-T 5317-2025《旋挖成孔灌注桩施工技术规程》
- 装修公司全包装修合同
评论
0/150
提交评论