




已阅读5页,还剩57页未读, 继续免费阅读
(计算机系统结构专业论文)基于web服务的黄页系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本人声明 我声明,本论文及其研究工作是由本人在导师指导下 独立完成的,在完成论文时所利用的一切资料均已在 参考文献中列出。 姓名:赵宏 签字: 日期:2 0 0 6 年2 月2 8 日 浙江大学硕上研究生学位论文 摘要 随着互联网的发展,电子黄页的应用越来越广泛,通过黄页发布的信息越 来越多,仅能发布联系方式和简单介绍的旧系统已经不能满足新的要求。于 是,批量信息发布技术成为了黄页系统的一个热点技术。教师黄页系统就是一 个这样的应用系统。 本文讨论了教师黄页系统区别与一般黄页系统的特点,明确了教师黄页系 统设计目标,比较了多种可能的实现技术以及它们的有缺点,选择了合适的技 术方案,并最终设计和实现了教师黄页系统。 针对手工录入数据工作量大,更新慢的特点,本文使用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 服务、有状态、电子黄页 第2 页 浙江大学硕j 研究生学位论文 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 t e m e t ,t h ea p p l i c a t i o n so fe l e c t r i cy e l l o wp a g ea r e m o r ea n dm o r ep o p u l a r n o w ,al o to fc u s t o m e r sc l a i mt oi s s u eal o to fi n f o r m a t i o n a n dt h en e w r e q u i r e m e n tc a n n o tb es a t i s f i e db yt h eo l dy e l l o wp a g es y s t e m s ,w h i c h c a no n l yi s s u ep h o n en u m b e ra n ds i m p l ei n t r o d u c t i o n s ot h et e c h n o l o g yo fi s s u i n g m a s si n f o r m a t i o nh a sb e c o m eah o tp o i n to fr e s e a r c hf i e l di ny e l l o wp a g es y s t e m s y e l l o wp a g es y s t e mo fz h e j i a n gu n i v e r s i t yi ss u c has y s t e m t h ed i f f e r e n c eb e t w e e nc h a r a c t e r so fy e l l o wp a g es y s t e mo fz h e j i a n gu n i v e r s i t y o fn o r m a ly e l l o wp a g es y s t e m sa r ed i s c u s s e d t h et a r g e to ft h es y s t e md e s i g ni s c o n f i r m e d s e v e r a lk i n d so fa v a i l a b l et e c h n o l o g ya r ec o m p a r e da n da p p r o p r i a t e t e c h n o l o g yi ss e l e c t e d t h ey e l l o wp a g es y s t e mi sd e s i g n e da n di m p l e m e n t e df i n a l l y w i t hav i e wt ot h eb o r i n gl a b o ra n ds l o wr e f r e s h i n go fi n p u t t i n gd a t ab yh a n d s , t h ew e bs e r v i c e st e c h n o l o g yi su t i l i z e dt oa c q u i r ed a t af r o mo t h e ri n f o r m a t i o ns y s t e m , i no r d e rt or e d u c i n gt h el a b o ro fi n p u t t i n gd a t a f u r t h e r m o r e ,as t a t e f u lm o d e lo fw e b s e r v i c e si sd e s i g n e da n di m p l e m e n t e di nt h es y s t e m ,b e c a u s et h es o a pp r o t o c o l , w h i c hw e bs e r v i c e si sb a s e do n ,i ss t a t e l e s s ,w h i l et h es t a t e l e s sm o d e lc a n n o tm e e tt h e s e c u r i t yr e q u i r e m e n to ft h ey e l l o wp a g es y s t e m t h i sk i n do fs t a t e f u lw e bs e r v i c e s p r o v i d es t a t e f u ls e s s i o no fw e bs e r v i c e si nt h ea p p l i c a t i o nl e v e l ,e n c a p s u l a t i n gt h e s t a t e l e s sw e bs e r v i c e s t h i sp a p e rc o n s i s t so fs i xc h a p t e r s c h a p t e ro n ei n t r o d u c e st h es u m m a r yo ft h i s p a p e r ,i n c l u d i n gt h ec h a r a c t e r so fy e l l o wp a g es y s t e ma n dr e s e a r c hf i e l do ft h ep a p e r c h a p t e rt w oi n t r o d u c e ss o m eb a c k g r o u n dk n o w l e d g e ,i n c l u d i n gw e bs e r v i c e s ,x m l a n dx s l t t h e n ,g e n e r a ld e s i g no ft h ew h o l es y s t e mi sd i s c u s s e di nc h a p t e rt h r e e , w i t hs e v e r a lt y p e so ft e c h n o l o g yc o m p a r e dt os e l e c tt h ep r i o ro n e s u b s e q u e n t l y ,t h e d e t a i ld e s i g na n di m p l e m e n to fs t a t e f u lm o d e lo fw e bs e r v i c e si sd e s c r i b e di nc h a p t e r f o u ra n db u s i n e s sm o d u l ei sd e s i g n e da n di m p l e m e n t e di nc h a p t e rf i v e m o r e o v e r , t h e e n v i r o n m e n to fd e v e l o p m e n ta n dt h es y s t e md e p l o y m e n ti se x p l a i n e di nc h a p t e rs i x f i n a l l y ,t h ep r o s p e c to ft h ef u t u r es t u d yi ss u m m a r i z e d t h ed e s i g n i n gi d e a sa n d i m p l e m e n t a t i o nt e c h n i q u e si nt h i sp a p e ra r ei n t r o d u c e df o rp r a c t i c a ln e e d ,a n dh a v e b e e np r o v e dt ob ea c c e p t a b l ei na c t u a l l yr u n n i n gs y s t e m s k e yw o r d s :w e bs e r v i c e s ,s t a t e f u lm o d e l ,e l e c t r i cy e l l o wp a g es y s t e m 第3 页 浙江人学硕寸研究生学位论文 第一章绪论 1 1 建设教师黄页系统的必要性和意义 自上世纪九十年代以来,互联网技术得到了飞速的发展。许多国家都致身 于“信息高速公路”建设,采用i n t e r n e t 和w e b 改变传统的信息传递方式。这 些发展为学术交流提供了新的方式,例如:学术论坛、视频会议等。此外,很 多学者和研究组都制作了个人主页用于发布其近期的学术成果和研究课题,这 种方式不受时间和地点的限制,集文字、音频、视频等多种媒介于一体,非常 适合分散的学术交流主体。 制作个人主页需要用到一些计算机技术尤其是w e b 技术,而制作精美的页 面更是需要在美工上做很多工作,这给教师发布学术信息带来了不便。此外, 因为这些个人主页相当分散,即使是一个学校的教师的个人主页,也往往分散 在各教师所在的院系或科研单位,所以只有知道了个人主页的确切的网址才能 够访问,绘校际学术交流带来了一定的不便,因此迫切需要个集中展现校内 学者研究成果的信息发布平台。 浙江大学教师黄页系统就是在这个背景下发展起来的一种新的学术信息发 布平台,与以往分散的个人主页相比,具有以下优点: 1 、教师黄页系统集中展现了校内教师的学术科研信息,并提供多种工具进 行查询检索,方便了校际的学术交流。 2 、教师黄页系统提供了简单易用的制作个人主页的工具,不要求信息发布 者具备制作和发布页面的计算机技术。 3 、教师黄页提供精美的页面美工,信息发布者不需要熟悉美工技术。 4 、集中运行和管理,便于维护。 1 2 黄页系统现状 随着互联网技术的迅猛发展和个人电脑的普及,已经有越来越多的专业服 务提供商开始利用网络黄页拓展客户。这些黄页系统提供的基本功能包括数据 录入、查询检索和信息发布,系统具有以下特点: 1 、系统主要发布的信息是电话号码、公司地址和产品介绍等,这些信息的 特点是:信息量少,变化慢。那些数据量大和变化快的信息不在黄页系统发 布,而在发布者另外建立的主页中展现,黄页中包含一个指向该主页的连接。 2 、由于信息发布者与黄页系统之间不共享数据,所以数据录入主要依靠发 布者手工输入,系统难以发布量大且更新较快的信息。 3 、黄页系统的查询检索的范围仅限于数据录入的部分,而不包括发布者另 外建立的主页中的内容。 第7 贞 浙江火学硕士研究生学位论文 4 、信息发布者为企业或个人,他们的系统与黄页系统之间存在各自的防火 墙,所以一般都是通过w e b 网页录入信息,用h n l p 协议传递数据。 1 3 教师黄页系统的特点 与上述一般的黄页系统相比,教师黄页系统有以下特点: 1 、发布的信息量更多:教师个人主页的内容不仅包括教师基本信息,还包 括教学、论文、科研项目、专利、会议等方面。 2 、信息变化更快。 如果使用手工录入,不仅初次使用时需要较多的数据录入的工作量,此 后,每次更新数据都要重新输入,导致系统可用性较差。所以,必须使用新的 技术来解决传统黄页系统中手t 录入数据的问题。 一种解决办法是使用分布式组件技术来从其他信息系统获取数据。传统的 分布式组件技术包括c o m d c o m 、e j b 和c o r b a 等,但是,它们都不同程度 地存在一些问题。例如:c o m d c o m 的一个致命弱点是跨平台性较差,如何 实现与第三方厂商的互操作性是它面临的。大问题;e j b 只适合于j a v a 兼容 的软件,且只能在纯j a v a 环境中进行,不同语言开发的应用软件的集成几乎 不可能;而且每个客户端都要装有o r b 软件,而且不同的o r b 产品之间很难 进行通信,不利于系统的互操作。 1 4 改进后的黄页系统的优点 w e b 服务技术可以解决上述传统分布式组件所存在的问题,并使黄页系统 从其他信息系统获取数据,从而避免手工输入大量数据。 但是,目前w e b 服务技术是无状态的,任何系统都可以访问服务提供者所 发布的w e b 服务,这会带来一定的安全隐患。所以本文设计了一种支持状态的 w e b 服务,并应用到了教师黄页系统。 基于这种有状态的w e b 服务的黄页系统具有以下优点: 1 、支持从其他信息系统导入数据,减少了用户手工输入的工作量; 2 、平台无关性:对提供数据的信息系统的操作系统和w e b 服务器类型没有 要求: 3 、由于w e b 服务可以使用h 1 t r p 作为底层协议来传递s o a p 消息,所以黄 页系统与提供数据的信息系统可以在i n t e r n e t 的范围内交互; 4 、安全性:由于使用了支持状态的w e b 服务,只有通过了服务提供者认证 的系统爿能够使用w e b 服务,所以该系统比使用无状态w e b 服务的系统 更加安全。 第8 贞 浙江火学硕士酬究生学位论文 4 、信息菠布名为企业或个人,他们的系统与黄页系统之问存在各自的防火 墙,所以散都是通过w e b 网页录入信息,用h 1 1 甲协泌传递数据。 1 3 教师黄页系统的特点 与上述一般的黄页系统相比,教师黄页系统有以下特点: 1 、发布的信息量史多:教帅个人主页的内容小仅包括教帅基本信息,还包 括教学、论文、科研项日、专利、会泌等方面。 2 、信息变化更快。 如果使用手工录入,不仅初次使用时需要较多的数据录入的工作量,此 后,每次更新数据都要重新输入,导致系统可用性较差。所以,必须使用新的 技术来解决传统黄页系统中手i 录入数掘的问题。 一种解决办法是使用分布式组什技术来从其他信息系统获_ | = 阪数据。传统的 分布式组什技术包括c o m d c o m 、e j b 和c o r f i a 等,但是它们都不同程度 地存在一些问题。例如:c o m d c o m 的一个致命弱点足跨平台性较差,如何 实现与第三方厂商的互操作性是它面临的大问题;e j b 只适合于j a v a 兼容 的软件且只能在纯j a v a 环境中进行,不同语言开发的应用软件的集成几乎 不可能;而且每个客户端都要装有o r b 软件,而且不同的o r b 产品之i 叫很难 进行通信,不利于系统的互操作。 1 4 改进后的黄页系统的优点 w e b 服务技术可以解决j 述传统分布式组件所存舟的问题,并使黄页系统 从其他信息系统获耿数据,从而避免手工输入大量数据。 佴是,目前w e b 服务技术是无状态的,任何系统都u j 以访问服务提供者所 发布的w e b 服务,这会带来一定的安全隐患。所以本文设计了一种支持状态的 w e b 服务,并应用到了教师黄页系统。 基于这种有状态的w e b 服务的黄页系统具有以下优点: 1 、支持从其他信息系统导入数据,减少了用户手r 输入的工作量: 2 、平台无关性:对提供数据的信息系统的操作系统和w e b 服务器类型没有 要求: 3 、由于w e b 服务町咀使用町1 1 p 作为底层协议来传递s o a p 消息,所以黄 页系统与提供数据的信息系统可以在i n t e t n e t 的范围内交互: 4 、安全性:由于使用了支持状态的w e b 服务,只有通过了服务提供者认让 的系统爿能够使用w e b 服务,所以该系统比使用无状态w e b 服务的系统 的系统才能够使用w e b 服务,所以该系统比使用无状态w e b 服务的系统 更力安全。 第8 负 浙江大学硕十研究生学位论文 1 5 本论文的研究内容 本文所做工作如下: 1 、本论文分析了教师黄页系统区别与一般黄页系统的特点,并分析了教师 黄页系统的设计目标; 2 、本论文分析比较n e t 体系结构与j 2 e e 体系结构特点,并选用j 2 e e 体 系结构来设计教师黄页系统; 3 、本论文分析比较了几种常用的分布式组件技术,并选用了w e b 服务技 术来实现教师黄页系统; 4 、本论文分析了无状态w e b 服务的缺点,并设计和实现了一种支持状态的 w e b 服务组件。该组件在应用层封装了w e b 服务,并用w e b 服务会话来保持 w e b 服务的状态。 5 、本论文设计和实现了一种通用的页面结构,用于降低系统内部的耦合 性,和提高系统的扩展性。 1 。6 本论文的结构安排 本论文的结构安排如卜: 第一章是绪论,通过对现有黄页系统的优缺点的分析,提出了本论文的研 究内容。 第二章介绍了w e b 服务技术。 第三章系统的总体设计,给出了系统的总体框架,以及每个模块的软件结 构,比较了各种实现方案的优缺点,为教师黄页系统选择了合适的方案。 第四章设计了一种支持状态的w e b 服务,并给出了它在教师黄页系统中的 实现细节。 第五章介绍系统中业务逻辑模块设计和实现的细节,其中重点描述了一种 通用的内容结构的设计和实现。 第六章介绍了系统的开发环境和运行部署情况。 最后,总结论文及研究工作,展望下一步的工作内容。 第9 贞 浙江大学硕。i j 研究生学位论文 第二章w e b 服务技术介绍 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 之上、具有松散耦合特性的可重用软件组件,用户可以通过i n t e r n e t 标 准协议对其进行访问和使用,l ”。2 0 0 2 年4 月,w 3 c 给出了一个相对清晰的定 义:w e bs e r v i c e 是。种通过u r i 标识的软件应用,其接口及绑定形式可以通过 x m l 标准定义、描述和检索,w e bs e r v i c e 能够通过x m 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 可以看作是一种部署在互联网上的组 件,它具备以下特征: 完好的封装性 w e bs e r v i c e 作为是一种部署在互联网上的组件,具备良好的封装性,对于 使用者而言,能够查找、定位和使用该服务提供的数据和功能。 松散耦合 这4 一特征相对于传统的组件技术,传统的应用软件设计要求各个单元之间 紧密连接,这种连接形成的复杂性要求开发者必须对连接的两端元素有完全的 了解和控制能力。而基于w c bs e r v i c e 的软件应用,仅需要一种适合互联网环境 的消息交互协议和相应的查找、发现机制,并允许更加自由的配置。 基于标准协议规范的开放性 w e bs e r v i c e 需要使用开放的标准协议进行描述、传输和奄找,这些标准协 议具有完全免费的规范。一般而言,绝大多数规范将最终有w 3 c 或o a s i s 作 为最终版本的发御方和维护方。 高度的可集成性 由于w e bs e r v i c e 采取简单的、易理解的标准协议作为组件接口描述和协同 描述规范,屏蔽了不同软件平台的差异,无论是c o r b a 、c o m + 还是e j b 都 - 叮以通过这一种标准的协议进行互操作,实现了在互联网环境下高度的可集成 性。 上述特征使得w e bs e r v i c e s 适用于具有强分布性、且具有芙享需求的应用场 合,如电子商务、电子政务、企业应用集成、跨企业边界的业务整合等。 第1 0 页 浙江大学硕士研究生学位论文 w e b 服务应用模式主要包括三个主体 3 :服务请求者、服务提供者和服务 注册巾心,它们对应的三个主要操作为服务查找、服务绑定和服务发布,如下 图所示: 图2 1w e b 服务应用模式 目前围绕着w e b 服务发布、查找、绑定过程,各大标准化组织和著名厂商 不断在制定相关的标准规范,其中主要包括三个规范:简单对象访问协议 s o a p 【4 l ( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) ,w e b 服务描述语言w s d l 5 】( w e b s e r v i c ed e s c r i p t i o nl a n g u a g e ) ,通用描述、发现和集成协议u d d i 6 】 ( 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 ) , 服务提供者( s e r v i c ep r o v i d e r ) :w e bs e r v i c e 的拥有者。它实现w e b s e r v i c e 并通过在注册中心注册以供他人使用。 服务请求者( s e r v i c er e q u e s t e r ) :请求完成特定功能的用户。它可以 是传统的应用程序也可以是其它的w e bs e r v i c e 。 服务注册中心( s e r v i c er e g i s t r y ) :w e bs e r v i c e 检索和发布中心。服务 提供者通过将所要提供的服务在中心注册以对外发布,服务请求者则能 够访问注册巾心获得所需的服务信息。 下面将介绍这三个规范的基本内容。 2 1s o a p 由于互联网环境的异构性,导致跨平台的应用程序在数据共享方面的能力 非常有限,因此一直以来人们都在努力建立有关数据格式和数据交换方面的标 准,希望能在互联网环境下无缝地集成跨平台的服务,实现不同系统间的自由 通信和共享数据,而s o a p 正是实现这个目标的核心协议之一。 s o a p 是通过x m l 来支持r p c 和信息交换的简单协议,它为在松散的、分 布的环境中交换结构化和类型化的信息提供了一个轻量级机制,它通过一个模 块化的包模型以及消息编码的方式定义了交换消息的简单机制,可以用于互联 网,也可以用于局域网中的通信。s o a p 本身并不定义任何应用语义,同时, 它也不依赖于任何特定的底层传输| 办议,在实际应用中町以绑定到多种传输协 议,比如h t r p 、f r p 或者s m t p 。 浙江人学硕上研究生学位论文 2 0 0 0 年2 月w 3 c 发布了s o a p l 1 规范1 7 , 8 , 9 j ,以提供一种开放和统一的方式 支持应用问的集成和互操作。它的设计需求包括:要尽可能地广泛支持潜在的 有使用s o a p 可能的编程模型,支持在通信双方中使用的各种协议绑定,能够 通过直接的方式或者可扩展的机制支持各种消息模式和应用场合。s o a p 是在 x m l 基础上定义的,完全继承了x m l 的开放性和可扩展性,它为在松耦合、 分布的环境中使用x m l 对等地交换结构化和类型化的信息提供了一个简单且 轻量级的机制。s o a p 本身并不定义任何应用语义,因而它能够被很多类型系 统用于从消息系统到远程过程调用系统的延伸。 2 1 1s o a p 规范 s o a p 规范由如下四个部分组成i ”1 : 1 、s o a p 信封( s o a p e n v e l o p e ) ,定义了一个整体的表示框架,可用于 表示在消息中是什么,谁应当处理它,以及这是可选的还是强制的; 2 、s o a p 编码规则( s o a pe n c o d i n gr u l e s ) ,定义了一个数据的序列化机 制来定义应用程序中需要使用的数据类型,并可用于交换由这些应用程序定义 的数据类型所衍生的实例; 3 、s o a pr p c 表示( s o a pr p cp r e s e n t a t i o n ) ,定义了一个用于表示远端 过程调用和响应的约定。由于s o a p 采用了x m l ,并在调用与交换信息方面有 其优势,使得它成为解决w e b s e r v i c e 中调用接口定义所遵循的规范。 4 、s o a p 绑定( s o a pb i n d i n g ) :定义了使用底层传输协议来完成在节点 间交换s o a p 信封的约定。 2 1 2s o a p 消息 s o a p 消息可以看作是一个x m l 文档,它由一个必需的s o a pe n v e l o p e 、 一个可选的s o a ph e a d e r 和一个必需的s o a pb o d y 组成m ,。s o a p 消息的组 成如下图所示: 第1 2 页 浙江大学硕士研究生学位论文 图2 2s o a p 消息组成部分 各部分说明如下: s o a pe n v e l o p e :类似e m a i l 消息的信封,信封中的属性以及其他元 素都必须通过名字空间来标定。 s o a ph e a d e r :它提供了个可伸缩的扩展s q a p 消息的机制,町以通 过s o a p 角色来指定对s o a p 消息的处理语义。例如可以进行安全扩 展、事务处理扩展等。 s o a pb o d y :包括s o a p 消息的具体内容,取决于通讯的类型,b o d y 元素可以包括r p c 调用和响应、出错消息以及其他的单向s o a p 消 息。 2 , 1 3s o a p 编码 s o a p 定义了一系列的编码规则,用于将非x m l 数据编码为符合s o a p 数 据模型的s o a p 数据,存放于s o a p 报文中,实现了非x m l 数据到序列化表 示的映射。s o a p 编码使类似整数( i n t e g e r ) 、字符串( s t r i n g ) 、数组( a r r a y ) 、结 构( s t r u e t ) 等数据类型得以在s o a p 消息中编码表示。 s o a p 编码风格是基于一个简单类型系统,该系统是从程序语言、数据库和 半结构数据库中类型系统的公共特性泛化而来。一个类型是一个简单( 可量化 的) 类型或者是一个复合类型,该复合类型是由多个部分组成,每个部分是1 个类型。 2 1 4s o a p 绑定 尽管s o a p 可以绑定到多种底层传输协议,最常见的是将s o a p 绑定在 h t p 上,这样可以在利用 r r r p 丰富的特性集的同时利用s o a p 形式方法和 第1 3 页 浙江人学硕卜研究生学位论文 分布适应性的优点。s o a p 很自然地利用h t t p 的请求响应消息模型,将 s o a p 请求的参数放在h t t p 请求里,而将s o a p 响应的参数放在h t t p 响应 里面。当需要将s o a p 消息体包含在h t t p 消息中时,h t t p 应用程序必须依 照r f c 2 3 7 6 使用媒体类型“t e x t x m l ”。 2 1 5s o a pr p c 表示 s o a p 的一个设计目标就是要利用x m l 的可扩展性和可伸缩性来包装和交 换r p c 调用。在使用h t t p 作为s o a p 绑定媒介的情况下,一个r p c 调用可 以很自然地映射到一个h t t p 请求,而r p c 响应则可以映射到h t t p 响应。当 然,使用s o a p 方式的r p c 并不限于h 1 t r p 协议绑定。 为了完成一个远程方法调用,在s o a p 消息中需要如下信息: 目标s o a p 节点的u r i 方法名 可选的方法或过程的特征 可选的头数据 s o a p 依赖协议绑定来提供传送目标s o a p 节点的u r i 的机制。例如,对 于h t r p 绑定而言,请求的u r i 指明了与该调用相对应的资源。 r p c 调用和响应消息数据都是在s o a pb o d y 元素中传送。 2 2 w s d l 自s o a p 出现以后,大量基于互联网的应用采用了s o a p 技术,但要实现 应用之间的互操作,应用还需要通过某种方式主动向外界提供其接口的描述信 息。因此,业界曾经出现过多种基于x m l 的接口说明语言,其中包括i b m 的 可访问网络服务规范语言、微软的服务描述语言和s o a p 协约语言等。 面对众多的接口描述方式,必须对接口描述进行标准化,使得应用自身能 够提供统一的接口描述能力并获得良好的互操作能力。因此m i c r o s o f t 、i b m 和 a r i b a 于2 0 0 0 年9 月联合推出w s d l i “l f 乍为w e b s e r v i c e 的描述标准。由于 w e b s e r v i c e 在功能上表现为一系列面向文档类型信息和面向过程信息的操作集 合,因此w s d l 将w e bs e r v i c e 定义为服务访问点的集合,客户端可以通过这 些服务访问点对相应的服务进行访问。w s d l 首先对访问的操作和访问时使用 的请求响应消息进行抽象描述,然后将其绑定到具体的传输协议和消息格式 上,最终定义具体的服务访问点。 在w s d l 中,对操作和消息的描述是抽象的,仅在定义服务访问点时将消 息和操作绑定到具体的传输协议和数据格式上,由相关的服务访问点构成服 务。因此w s d l 是可扩展的,它允许对端点和端点间的消息进行描述,同时不 第1 4 页 浙江人学硕卜研究生学位论文 去考虑具体的消息格式和双方用于通讯的网络协议。进而可以重用这些抽象定 义:描述交换数据的消息( m e s s a g e ) 、描述消息对的操作( o p e r a t i o n ) 以描述操 作的端口类型( p o r t t y p e ) 。再针对特定端口类型的具体协议和数据格式规范构成 可重用的绑定( b i n d i n g ) 和端u ( v o r t ) 从而组成新的服务。 2 2 1w s d l 的功能 作为w e b 服务的描述语言,服务请求者通过w s d l 文档来了解一个w e b 服务的具体情况,服务提供者同样也需要通过w s d l 文档来暴露某w e b 服务 的相关特性,因此,w s d l 应该能代表服务提供者向服务请求者回答如下四个 基本问题: 服务的访问点是什么? 该服务提供哪些方法? 访问这些方法时,请求者需要提供的参数及其类型是什么? 绑定什么协议来传输请求消息和应答消息? 2 2 2w s d l 的文档结构 从概念上看,一个w s d l 文档就是一个定义集,并含有两大部分,如下图 所示: 图2 3w s d l 文档组成部分 1 接口定义部分,包括如下元素: o t y p e s :数据类型定义的容器,它使用某种类型系统( 如x s d ) 第1 5 页 浙江人学硕f 。研究生学位论文 0 m e s s a g e :通信数据的抽象类型化定义 0 o p e r a t i o n :对服务所支持的操作的抽象描述 0 p o r t t y p e :操作的抽象集合,这些操作由一个或多个端点支持 o b i n d i n g :特定端口类型的具体协议和数据格式规范 2 接口实现部分,包括如下元素: 0s e r v i c e :相关端点的集合 op o r t :将绑定和网络地址组合在一起表示单个端点 2 。3u d d i 借助于s o a p 和w s d l 能够解决应用之间的消息通信和功能接口描述的问 题,但w e bs e r v i c e s 作为集成异构应用的手段,还必须提供一种有效的机制用 于互联网环境中信息的发布和检索,使得应用之问能够相互发现,彼此了解各 自的需求和能力,进而实现应用的集成和互操作。 因此,m i c r o s o f t 、i b m 、a d b a 于2 0 0 0 年6 月推出了u d d l 规范i l “,作为互 联网环境下的服务描述、发现和集成机制,为电子商务应用和服务发现提供标 准的信息格式和调用方式。u d d i 是一套信息与服务注册的标准,同时也提供 了一组标准接口。企业应用可以通过这组接口来注册它们所提供的服务,同时 也可以通过它们来实现对所注册的服务的访问。该规范中定义了一套基于x m l 的信息模型,以描述硷业及其所提供服务信息。这些信息分为三个部分:白 页、黄页和绿页。白页包含企业的地址、联系方法和已知的企业标识;黄页包 含了基于标识分类法的行业类别;绿页则包括了关于该企业所提供的w e b 服务 的技术信息,其中还包含了指向特定的w e bs e r v i c e 的链接或是u r l 等。通过 这样一个信息模型,食业可以详细地将自身所提供的服务信息描述清楚。相 反,u d d i 规范中没有直接涉及到具体的商业发现流程,没有定义发现服务所 需的特性,其目标仅仅是为了存技术上实现服务的发现。借助u d d i 所定义的 功能,应用或开发者能够定位到合作伙伴所提供的服务信息,知道对方能否提 供与自己技术相兼容的服务,然后按照这些合作伙伴服务所提供的调用标准进 行集成。 在u d d i 中,其核心是一个物理分布、逻辑集中的注册中心,它从概念上 是一个云状结构,由很多提供u d d i 登记服务的操作入口点所组成的一个集 群。从注册中心的外部来看,它对于用户是一个整体的服务,由不同的u d d i 操作入口点充当注册中心的访问入口。同时,u d d i 提供两种有效的机制保证 注册中心查询操作和数据的一致性。第一种机制是查询分发和重定向,即当一 个操作入口点除了完成本地查询外,还将查询请求分发和重定向到其他所有的 操作入口点,并将所获得的查询结果与本地结果整合后一起返回给查询者;第 二种机制是数据复制与同步,即当一个操作入口点在执行更改数据操作时,还 浙江大学硕l 研究生学位论文 需要将该操作分发和重定向到其他操作入口点以同步地执行数据更新。冈此, 在一个u d d i 操作入口点上进行查询操作就等同于对整个u d d i 注册中心进行 查询。 2 3 1u d d i 信息模型 u d d i 注册中心使用的核心信息模型由x m l s c h e m a 定义。使用x m l 是因 为它提供了平台无关的数据描述并很自然地描述了数据的层次关系。而选择 x m l s c h e m a 是因为它支持丰富的数据类型,便捷的描述方式及其按信息模型 对数据进行验证的能力。 u d d i2 0 版本中定义了五种主要的信息类型,包括商业实体信息 ( b u s i n e s s e n t i t y ) 、服务信息( b u s i n e s s s e r v i c e ) 、绑定模板信息 ( b i n d i n g t e m p l a t e ) 、服务调用规范信息( t m o d e l ) 和发布声明信息 ( p u b l i s h e r a s s e r t i o n ) ,它们是技术人员在需要使用商业伙伴所提供的w e b 服 务时必须了解的技术信息。 2 3 2u d d i 交互框架 u d d i 规范包括w e b 服务的接口定义,使得可以通过编程实现对u d d i 注 册中心的信息访问,其中包括查询a p i 和发布a p i 。查询a p i 又分为两个部 分:一部分被用来构造搜索和浏览u d d i 注册信息的程序,另一部分在w e b 服 务出现错误时使用。发布a p i 可以被程序员用来创建各种类型的工具,以直接 与u d d i 注册中心进行交互,便于企业技术人员管理b u s i n e s s e n t i t y 或t m o d e l 结 构的发布信息。 2 4 总结w e b 服务的优点 综上所述,w e b 服务具有以下优点: 1 采用x m l 来描述服务,使得w e b 服务具有平台无关性和语言无关性; 2 进行动态的服务查找和调用功能( 发布、查找和绑定) 以及基于消息的 协作功能使得应用程序可以松偶合地动态地集成新的服务; 3 采用w e b 服务进行封装降低了系统的复杂性; 4 服务的抽象和具体分离,有利于提高系统的稳定性和可扩展性; 5 标准的基于x m l 的通信格式增加了和其他系统的互操作性; 此外,相对于使用传统的分布式对象技术而言,采用w e bs e r v i c e 进行基于 i n t e r n e t 的分布式应用系统开发还具有以下优势: 第1 7 页 浙江大学硕i :n 究生学位论文 首先,w e bs e r v i c e 的优势体现在跨越防火墙的通讯中。当应用程序有大量 客户分布在i n t e r n e t 上时,客户端和服务器端之间的通讯会变的十分棘手,因为 它们之间通常有防火墙或者代理服务器。在这种情况下,如果使用d c o m 或者 c o r b a 来实现该分布式应用,解决会变得及其复杂,甚至不可能实现,因为 d c o m 和c o r b a 采用专门固定的协议进行消息交换,其传输的消息经常被阻 隔于防火墙之外。但是基于w e bs e r v i c e 的解决方案,采用超文本传输协议 ( h t r p ) 作为通讯协议,可以很容易地实现客户端和服务器端之间跨越 i n t e r n e t 的通讯。 其次,w e bs e r v i c e 利用x m l 描述数据以及接口。x m l 是种被广泛接受 的、用于描述数据、数据交换接口以及数据相关语义信息格式的描述语言。 w e bs e r v i c e 利用x m l 的自描述特性,可实现客户端和服务器端的松散耦合; 而对于c o r b a 、d c o m 和e j b 等,无论是客户端还是服务器,都需要其相关 的复杂的运行环境的支持。采用x m i ,来描述服务,使得w e b 服务具有平台无关 性和语言无关性。 再次,w e bs e r v i c e 的优势体现在应用程序的集成中。企业级的应用程序开 发者都知道,企业里经常都要把用不同语言写成的、在不同平台上运行的各种 程序集成起来,而这种集成将花费大量人力物力。即使是在同一个平台上,不 同软件厂商生产的各种软件也常常需要集成起来。通过w e bs e r v i c e ,应用程序 可以用标准的方法把功能和数据暴露出来,供其它的应用程序使用,减少系统 集成的费用。 建立在x m l 基础上的w e b 服务提供了一个简单的,能跨平台、跨语占和 对象模型的协作架构,它在互操作性等方面的优点使它在企业应用集成、电子 商务等领域有着广阔的应用前景。到目前为止,w e b 服务已得到i b m 、微软、 s u n 、h p 等业界大公司的全力支持,w e b 服务已经成为了下一个网络时代的发 展方向之一。 第1 8 页 浙江大学硕? i :研究生学位论文 第三章系统的总体设计 本章主要介绍教师黄页系统的总体设计,其中包括没计过程中对各种技术 方案的选取。首先介绍了教师黄页系统的特点,总结出教师黄页系统的总体设 计目标,并从功能上将本系统划分为检索与浏览、定制和系统管理三个模块; 接着比较分析了j 2 e e 体系结构与n e t 体协结构的优缺点,并选择j 2 e e 体系结 构来设计本系统;然后对每个模块进行了总体的设计。在设计定制模块的过程 中,比较了一些相关的技术方案,选定了合适的技术方案。 3 。1 系统的特点与总体目标 为展现浙江大学教师的学术成果,方便学术交流,我们开发了浙江大学教 师黄页系统。通过该系统,教师只需要花很少的时间就可以快速做出自己的个 人主页:普通用户可以查找教师并浏览他的个人主页;系统管理员可以用w e b 的方式管理教师黄页系统。 由于教师黄页系统是一个窗口系统,国内外用户都可以访问,所以对系统 的安全性和持续运行的能力要求较高。 由于学校工作具有周期性的特点,所以可能在某些时候系统的访问量会特 别高,例如:研究生或本科生选导师和实验室的时候,所以对系统的性能要求 比
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025河北佳慧电通科技有限公司招聘1人笔试参考题库附带答案详解
- 电大会计专业毕业论文题
- 邛崃中考真题数学试卷
- 2025中铁一局集团建筑安装工程有限公司招聘2人(设计运营管理)笔试参考题库附带答案详解
- 本科毕业论文答辩衣服
- 数学专业毕业论文建模题
- 2025年度高端公寓租赁及绿色物业管理合作协议
- 2025年度药品研发企业临床研究药品采购合同及伦理审查执行标准
- 2025年度车辆共享与品牌形象广告投放合作协议
- 2025年学生自主实习就业指导与就业保障服务合同
- 冀教版六年级英语上册课件Unit-2
- 轴孔用YX型密封圈规格尺寸
- 全国机场图2013九江庐山
- 肾上腺疾病外科治疗
- 第9章探放水钻机及相关设备的安全使用.
- 水调歌头·游泳-课件
- 人教版三年级下册体育与健康教案(全册教学设计)
- 交通部农村公路建设标准指导意见
- 卫浴店面管理
- 清表施工方案4常用
- 广西壮族自治区尾矿库注销及小型尾矿库闭库工作指导意见
评论
0/150
提交评论