(计算机应用技术专业论文)基于p2p的web服务模型的研究.pdf_第1页
(计算机应用技术专业论文)基于p2p的web服务模型的研究.pdf_第2页
(计算机应用技术专业论文)基于p2p的web服务模型的研究.pdf_第3页
(计算机应用技术专业论文)基于p2p的web服务模型的研究.pdf_第4页
(计算机应用技术专业论文)基于p2p的web服务模型的研究.pdf_第5页
已阅读5页,还剩70页未读 继续免费阅读

(计算机应用技术专业论文)基于p2p的web服务模型的研究.pdf.pdf 免费下载

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

文档简介

摘要 w e b 服务是目前互联网的发展热点 不少不同行业的大企业都在 联合研究它的使用和推广 几个处于领导地位的计算机公司正在加紧 开发支持该架构的平台软件 相关产品正陆续推出 w e b 服务技术作 为对c o r b a e j b 和c o m 的延伸必将有更广泛和更有价值的应用前 景 w e b 服务技术也将深刻改变软件的开发 发布和使用的方式 它 正以其开放 简单 跨平台 低代价集成等优点引起相关研究人员和 应用开发人员的重视 不过在传统的w e b 服务体系结构中 服务的发布与发现都是以一 个服务注册中心为基础的 服务注册中心是系统中潜在的瓶颈而且如 果服务注册中心失效则整个系统瘫痪 在p 2 p 网络模型中 所有的节 点处于同等的地位 既是客户端 又是服务器 我们认为把p 2 p 的思 想与w e b 服务结合起来 可以有效地解决w e b 服务的瓶颈性问题和单 点失效问题 本文介绍了基于p 2 p 的w e b 服务的架构 并在此基础上提出了三 种基于p 2 p 的w e b 服务模型 详细阐述了在这三种模型中 服务发布 服务发现 加入节点 删除节点的方法 分析比较了这三种模型的性 能 指出了各自的适用范围 最后将基于p 2 p 的w e b 服务与传统w e b 服务比较 指出了基于p 2 p 的w 曲服务的优势 并对基于p 2 p 的w e b 服务的前景做了展望 关键词 w e b 服务 p 2 p 路由表 c h o r d 协议 x m l a b s t r a c t w e bs e r v i c e sa r et h en e wh o t s p o to fp r e s e n ti n t e r a c td e v e l o p m e n t m a n ye n t e r p r i s e sc o m i n gf r o md i f f e r e n td o m a i nj o i nt o g e t h e rt os t u d yi t s u s ea n dd e v e l o p m e n t a n ds e v e r a le n t e r p r i s e sa tt h el e a d e r s h i pp o s i t i o n a r ed e v e l o p i n gp l a t f o r mt os u p p o r tt h i sa r c h i t e c t u r e a n dt h er e l a t i v e p r o d u c t s a r e b e i n gp r o m o t e do n e a f t e ra n o t h e r t h ew e bs e r v i c e t e c h n o l o g yr e g a r d e da st h ee x p a n do fc o r b a e j ba n dc o m w i l l c e r t a i n l yh a v em o r ew i d e s p r e a da n dv a l u a b l ea p p l i c a t i o np r o s p e c t t h e w e bs e r v i c e st e c h n o l o g yw i l la l s oc h a n g et h ed e v e l o p m e n t t h ei s s u ea n d t h eu s em e t h o do fn e x tg e n e r a t i o ns o f t w a r e r e s e a r c h e r sa n dt h e a p p l i c a t i o nd e v e l o p e r s a t t a c h i m p o r t a n c e t oi t sv a l u eo f o p e n i n g s i m p l e n e s s c r o s s i n gp l a t f o r ma n di n t e g r a t i o n a tl o wc o s t b u ti nt r a d i t i o n a lw e bs e r v i c e sa r c h i t e c t u r e s e r v i c ep u b l i c a t i o na n d d i s c o v e r ya r es t i l lb a s e do nac e n t r a l i z e ds e r v e r u d d ii sab o t t l e n e c ki n t h ea r c h i t e c t u r e i fu d d ii sd i s a b l e d t h ea r c h i t e c t u r ew i l lb ef a i l e d i n p 2 pn e t w o r km o d e l a l ln o d e s c l i e n t sa sw e l la ss e r v e r s a r ep e e r w e c o n s i d e rt h ec o m b i n a t i o no fp 2 pa n dw e bs e r v i c e sw i l ls o l v et h e s e p r o b l e m si nt h ea r c h i t e c t u r e t h i st h e s i si n t r o d u c e st h ea r c h i t e c t u r eo fw e bs e r v i c e sb a s e do np 2 p a n dp u t sf o r w a r dt h r e ek i n d so fm o d e l so fw e bs e r v i c e sb a s e do np 2 p t h e ne l a b o r a t e sh o wt op u b l i s hs e r v i c e s f i n ds e r v i c e s a p p e n dn o d ea n d i i d e l e t en o d ei nt h e s em o d e l s a n a l y s e sa n dc o m p a r e st h ep e r f o r m a n c eo f t h et h r e em o d e l s p o i n t so u tr e s p e c t i v ea p p l i c a b l es c o p e f i n a l l yw e c o m p a r e st h ew e b s e r v i c e sb a s e do np 2 pw i mt h et r a d i t i o n a lw e bs e r v i c e s p o i m so u tt h ep r e d o m i n a n c eo fw e bs e r v i c eb a s e d o np 2 p a n dg i v ea n e x p e c t a t i o no f t h ef u t u r ea n dt e n d e n c yf o rw e b s e r v i c e sb a s e do np 2 p k e yw o r d s w e bs e r v i c e s p 2 p r o u t et a b l e c h o r dp r o t o c o l x m l i i l 附件一 东华大学学位论文原创性声明 本人郑重声明 我恪守学术道德 崇尚严谨学风 所呈交的学位论文 是本人在导师的 指导下 独立进行研究工作所取得的成果 除文中已明确注明和引用的内容外 本论文不包 含任何其他个人或集体已经发表或撰写过的作品及成果的内容 论文为本人亲自撰写 我对 所写的内容负责 并完全意识到本声明的法律结果由本人承担 学位论文作者签名 竹晦 日期 可年1 月 日 附件二 东华大学学位论文版权使用授权书 学位论文作者完全了解学校有关保留 使用学位论文的规定 同意学校保留并向国家 有关部门或机构送交论文的复印件和电子版 允许论文被查阅或借阅 本人授权东华大学可 以将本学位论文的全部或部分内容编入有关数据库进行检索 可以采用影印 缩印或扫描等 复制手段保存和汇编本学位论文 保密口 在 年解密后适用本版权书 本学位论文属于 不保密 扎 学位论文作者签名 日期 年 月 日 坝线 指导教师签名 丁 日期 哞 月1 e t 第一章绪论 1 1 研究背景 第一章绪论 随着i n t e r a c t 的发展 各商业实体开始把他们的商业活动转移到i n t e m e t 上 i n t e m e t 给他们提供了发现新客户 新服务的各种机会 使得各商业实体从i n t e r n e t 上获得巨大的经济回报 但是现在的经济倾向于 体化 不仅企业内部各部门之 间需要合作 企业与企业之间的合作 合并也越来越频繁 这反映到电子商务或 应用软件上就是合作企业软件的一种对接 但由于原系统所用的编程语言 开发 部署平台 协议以及数据格式往往存在着差异 这就给系统的集成带来了相当大 的难度 人们一直在探求一种解决方案 从c o r b a r m i c o m n 现在的集成 技术 沌b 服务技术 w 曲服务技术代表了分布式计算的下一个阶段 它将对各 个组织产生深远的影响 w e b 服务本身是一种无需购买并部署的组件 这种组件 是一次被部署至t i n t e m e t 中 然后到处可用的一种新型组件 所有应用只要能够连 入i n t e m e t 就可以使用和集成w 曲服务 通过采用w 曲服务 开发的代价显著降低 程序员无需与多种平台进行交互 它只需要跟一种组件进行交互 e p 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 r 厂商提出了备份服务注册中心的方案试图解决单点失效问题 当一个服务注册中心发生故障时 其它代理仍然可以维持系统的正常运行 不过 这种方法的开销较大 而且数据的一致性难以保证 我们认为 引入p 2 p 思想是上述问题的一个有效地解决方法 将p 2 p 与w 曲 服务结合在一起 不再需要服务注册中心 系统中每一个节点既是传统意义上的 客户端 又是服务器 系统中的节点都是对等的 能有效地解决系统的瓶颈问题 和单点失效问题 将p 2 p 与w e b 服务结合 可以灵活高效地实现w e b 服务 1 2 研究意义 w e b 服务架构的缺陷已经在一定程度上制约了w e b 服务的进一步发展 为 了解决这一问题我们结合了p 2 p 和w 曲服务技术 基于p 2 p 的w e b 服务中 服 务分布在系统的各个节点上 单个节点失效对系统的影响有限 系统中每个节点 都具有寻址能力 提高了系统资源利用率 由于系统中的节点都是对等的 有效 地解决了传统w e b 服务的瓶颈问题 有助于w e b 服务规模的扩大 随着w e b 服 务成为下一代w e b 的主导技术 我们提出的模型能够实现完全分布式的w e b 服 务 相信能进一步促进w e b 服务的发展 1 3 文章的安排 本文全面阐述了引入p 2 p 思想衔 决w e b 服务瓶颈问题的一种方案 文章的 具体安排如下 第二章讨论了w e b 服务和p 2 p 技术的相关问题 第三章介绍了 基于p 2 p 的w e b 服务模型的架构 第四章到第六章分别介绍了三种具体的p 2 p 模型 并对三种模型的性能做了分析和比较 第七晕对全文做了总结并展望了基 于p 2 p 的w e b 服务的发展前景 2 第二章w e b 服务与f 2 p 技术简介 第二章w e b 服务与p 2 p 技术简介 2 1w e b 服务概述 2 1 1w e b 服务的概念 w 曲服务是基于x m l 发展起来的技术体系 w 曲服务有两层含义 一是指被 封装成单个实体并被发布以供其它程序使用的功能集合 二是指调用功能集合的 整体技术框架 w 曲服务技术的主要目标是在现有各种异构平台的基础之上构筑 一个通用的平台无关 语言无关的技术层 各种应用依靠这个技术层来实施彼此 的连按和集成 1 1 从外部的使用者的角度来看 w e b 服务是一种部署在w e b 上的对象 组件 它 具有以下特点 完好的封装性 w e b 服务是一种对象 使用者只知道接口的描述 也就是服 务能实现的功能 而怎么实现却不必要关心 松散耦合 当一个w 曲服务的实现发生变更的时候 只要w 曲服务的调用接 口不变 调用者是不会感到这一点的 使用协约的规范性 首先 作为w e b f l 艮务 对象所提供的功能应当使用标准 的描述语言来描述 比如w s d l 其次 由标准描述语言描述的服务应该是 能够被发现的 因此这一描述文档需要被存储在私有的或公共的注册库里 同时标准描述语言描述的使用协约将被延伸到w 曲服务的聚合 跨w 曲服务 的事务 工作流等 高度可集成能力 由于w 曲服务采取简单的 易理解的标准w e b 协议作为规 范 完全屏蔽了不同软件平台的差异 无论是c o r b a d c o m 还是e j b 都可 以通过这一种标准的协议进行互操作 实现在当前环境下的最高的可集成 性 第二章w e b 服务与p 2 p 技术简介 2 1 2w e b 服务体系结构 一个完整的w e b 服务包括三种逻辑角色 服务提供者 服务注册中心和服 务请求者 2 3 1 如图2 1 所示 服务提供者提供服务 并进行注册以使服务可用 服务注册中心起中介作用 它是服务的注册场所 充当服务提供者和服务请求者 之间的媒介 服务提供者在此发布他们的服务描述 服务请求者通过服务注册中 心查询服务地址然后调用服务 绑定 图2 1w e b 服务体系结构图 与w e b 服务相关的行为主要有 发布 p u b l i s h 为使服务可用 服务提供者向服务注册中心发布服务描述 以使服务请求者可以查找它 查询 v i n a 服务请求者向服务注册中心发出查询服务请求 服务注册中心 提供规范的接口来接收服务请求者的查询请求 通常的方法是 服务请求者 根据通用的行业分类标准浏览或通过关键字搜索 并逐步缩小查找范围 直 到找到满足所需要的服务 绑定 b i n d 服务请求者分析从服务注册中心中得到的调用该服务所需的详 细绑定信息 服务的访问路径 调用的参数 返回结果 传输协议 安全要 求等 根据这些信息 服务请求者就可以实现对服务的远程诱用 2 1 3w e b 服务相关技术和标准 实现一个完整的w 曲服务体系需要有一系列的协议来支撑 其中最主要的是 已经成为w 3 c 标准的三个技术 s o a p w s d l 以及u d d i 4 第二章w e b 服务与p 2 p 技术简介 s o a p w e b j 艮务的核心技术就是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 o l 简单对象访 问协议 s o a p 是一个基于x m l 的轻量级的协议 用来在分布式的环境中交换信 息 4 s o a p 由四部分构成 s o a p 信封 e n v e l o p e 描述消息的内容是谁发送的 谁应当接收以及处理方式 s o a p 编码规则 e n c o d i n gr u l e s 表示应用程序应该 使用的数据类型实例 s o a p 远程过程调用表示 r p cr e p r e s e n t a t i o n 表示远程 过程调用和响应的约定 s o a p 绑定 b i n d i n g 使用底层传输协议交换信息 s o a p 消息模型如图2 2 所示 s o a pe a v e t e s o a ph e a d c t l s o a p g l s o a p g l s o a pb 0 0 is o a p 条目 l s o a p 条目 图2 2s o a p 消息模型 w s d l w s d l w e bs e r v i c ed e s c r i p t i o nl a n g u a g e 是一种基于 咀髂式的语言 用于 定义 阮b 服务并描述如何对其访问阁 w s d l 文档将w 曲服务定义为服务访问点或端口的集合 在w s d l 中 由于服 务访问点和消息的抽象定义己从具体的服务部署或数据格式绑定中分离出来 因 此可以对抽象定义进行再次使用 i i d d i 第二章w e b 服务与p 2 p 技术简介 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 统一描述 发现和 集成协议 提供了一种基于分布式的商业注册中心的方法 该商业注册中心维护 了一个w e b 服务的目录 而且其中的信息描述格式是基于通用的x m l 格式的 一 般来说 程序或程序员通过u d d i 商业注册中心来获得w 曲服务的位置及其技术 信息 u d d i 商业注册中心所提供的信息包含三个部分 6 白页 w h i t ep a g e 包括 了公司名称 地址 联系方法和已知的企业标识 黄页 y e l l o w p a g e 包括了基 于标准分类法的行业类别 比如 一家软件公司可能会被分到计算机软件或者软 件工程这一类 绿页 g r e e np a g e 包括了关于该企业所提供的w 曲服务的技术信 息 其形式可能是一些指向文件或u r l 的指针 而这些文件或u r l 是为服务发现 机制服务的 2 2 p 2 p 技术概述 2 2 1p 2 p 的研究背景 当前大多数的网络应用都是基于c s 或者b s 结构的 这样结构下的应用必须 在网络中设置一个服务器 信息先是集中上传到服务器保存 然后再分别下载 如 网页 该结构的明显特点是 内容中心化 系统必须有一个或若干服务器来提 供服务 大量客户频繁地访问 服务器将成为系统的瓶颈 固然硬件更新能够一 定程度缓解这种矛盾 但不可能满足日益发展的实际需求 p 2 p 可以理解为对等网络 其实p 2 p 也不是新概念 互联臃最基本的协议 t c p 仰并没有客户端和服务器的概念 所有的设备都是通讯中平等的一端 只是 随后由于网络规模的扩大以及信息量的增加 为了便于分组管理 客户端 服务 器 模型才逐渐成为因特网上占统治地位的计算模型 7 1 p 2 p 最大特点是将互联 网的存储模式由现在的 内容位于中心 模式转变为 内容位于边缘 模式 在 一些人眼中 p 2 p 仅仅是一种局限于文件共享的应用 事实上 p 2 p 应该被视为 分布计算的一个子集 它成功地将许多被忽略的技术拉回到大家注视的焦点 某 些新技术与软件工程结合 形成了一种将工作分散的趋势 p 2 p 计算正是这种分 散工作趋势的自然结果 而且 从工程的角度看来 在企业和科学研究应用集成 6 第二章w e b 服务与p 2 p 技术简介 等因素的驱动下 过去十年渐渐形成一种从集中的单机系统转向分布式系统的趋 势 在集中式的应用中进行控制是相对容易的 这一点在一定程度上抑制了分布 式潮流的发展 然而随着互联网的发展 以及b 2 b 商务交易方式的日益流行 全 面的分布式计算也就成为一种商业需求 2 2 2p 2 p 的定义 p 2 p p e e r t o p e e r 是不同于c s 等传统模式的新通信技术 它最大的特点是抛 开了应用服务器的束缚 用户之间可以直接通信 共享资源或协同工作 p 2 p 技 术起初的应用热点是类似于n a p s t e r 这样的m p 3 音乐站点 不过随着多方面的进 展 p 2 p 已经开始走向企业应用 i n t e l 给出的p 2 p 定义是 通过在系统之间的直接交换实现计算资源和服务的 共享1 8 1 在这个定义中 所谓的资源和服务包括文件的信息 处理周期 高速存 储器和磁盘存储 i b m 则给p 2 p 赋予更广阔的定义1 9 1 把它看成是由若干互联协作的计算机构 成的系统并具备如下若干特性 系统依存于边缘化 非中央式服务器 设备的主 动协作 每个成员直接从其他成员而不是从服务器的参与中受益 系统中成员同 时扮演服务器与客户端的角色 系统中的用户能够意识到彼此的存在构成一个虚 拟或实际的群体 还有这样一种解释i j o l p 2 p 除了是一种技术 也是一种思想 有着改变整 个互联网基础的潜能思想 p 2 p 中的p 应该解释为p e o p l e 它是无间隔的人 与人之间的交往 总体来讲 p 2 p 计算系统是分布式的 有别于集中式的基于服务器的结构 纯粹的p 2 p 计算系统不存在任何不可或缺的服务器 但某些混合式p 2 p 系统存在着 中央服务器 比如n a p s t e r 从传统的观点来看 p 2 p 计算系统中的实体一般同时 扮演两种角色 客户机和服务器 2 1 3c s 结构与p 2 p 结构的比较 c s 结构要在互联网上设置拥有强大处理能力和大带宽的高性能计算机 配 合高档的服务器软件 再将大量的数据集中存放在上面 并且要安装多样化的服 7 第二章w c b 服务与p 2 p 技术简介 务软件 在集中处理数据的同时可以对互联网上其他p c 进行服务 提供或接收 数据 提供处理能力及其他应用 对于一台与服务器联机并接受服务的p c 机来 说 这台p c 机就是客户机 其性能可以相对弱小 c s 结构造成互联网络上的集 中 无论是信息资源还是成本资源均向同一方向集中 这样的模式符合一对多 强对弱的社会关系形式 图2 3c s 结构 在2 0 世纪9 0 年代 客户端朋艮务器计算体系流行到了极点 但是p 2 p 结构对c s 结构提出了挑战 p 2 p 结构如图2 4 所示 图2 4 p 2 p 结构 8 第二章w e b 服务与p 2 p 技术简介 资源在哪里创建 就到哪里访问 的愿望促进了因特网进入分布式网络计 算阶段 分布式网络计算正处于发展阶段 它是把各种自治资源和系统组合起来 以实现资源共享 协同工作和联合计算 为各种用户提供基于网络的各类综合性 服务 例如 1 0 0 万人要同时访问一个站点 是不是意味着必须构建一个高配置的 服务器来满足所有人的需求 p 2 p 计算模型的答案是否定的 在p 2 p 结构中可以 将此站点资源分解n l o o 万台p c 上 通过i n t e r n e t 上的协作来进行 这一答案隐含 着两个显著的改变 搜索 即发现 分布在网络上进行 内容驻留在边缘 而非 中心服务器 可以说 随着网络技术尤其是宽带技术的发展和普及 传输渠道 己经逐渐不再成为信息传递的瓶颈 个人电脑软硬件技术的突飞猛进更使得计算 能力得到空前的提高 在这种环境下 p 2 p 应用技术得到充分的发展完全顺理成 耄 我们对现有p 2 p 系统研究 可以总结出p 2 p 结构具有的几个特点 1 弱化了服务器 甚至取消服务器 任意两个p e e r 互为服务器 同时又是客户 机 即对等 基于p 2 p 的结构与c s 结构相比 它最大的优势是降低了对服务器 的依赖及p 2 p 的分散控制 相对于服务器的集中控制 1 2 1 一些p 2 p 模型甚至 不需要服务器 用户可以不经过服务器和其他用户进行连接 用户在p 2 p 结构下 有着比传统的客户端 服务器结构更多的主动性 p 2 p 结构和c s 结构不同 它 没有单一的失败节点 p 2 p 已经在共享资源和服务器的价值方面动摇了c s 结构 p 2 p 方式将导致信息数量 成本资源都向互联网各节点均匀分布 也就是所谓 边缘化 的趋势 c 2 可扩展性好 对等网络的规模随着节点数量的增加而增长 新节点的加入会 给系统增加新的资源 这种可扩展性几乎是无限的 理论上限是现有的i n t e r n e t 的规模 3 完全对称 在对等网络中 所有的节点都是对称的 完成完全相同的功能 这也是对等网络名称的由来 c s 结构具有较好的商业市场用途 而p 2 p 结构具有 更好的信息资源共享 分布处理 两者的具体参数见表2 1 9 第二章w e b 服务与p 2 p 技术简介 表2 一ip 2 p 结构与c s 结构的比较 比较参数 p 2 pc s 数据发布好 差 数据接收 由 好 数据互动性 好差 数据及时性好 差 数据安全性 差 好 数据更新好 差 数据质量 中好 数据成本好 差 由于p 2 p 的这些优势 许多的合作机构和计算公司把p 2 p 结构和c s 结构 一样看重 两种网络模型各有千秋 都有着各自的优点和缺点 例如 在c s 结 构中 当网络增大时 即越来越多的客户加入 中央服务器的压力也增大 而 中央服务器的失效将会导致整个网络的瘫痪 p 2 p 结构与之相反 在网络用户之 间传送太多的请求会使网络繁忙 使网络本身增加了负载 而且发现的资源不一 定可靠 但是p 2 p 结构的应用仍然是成功的 i n m l 和m m 这样的公司都在p 2 p 应用上投入了数百上千万美元和大量的人力 2 2 4p 2 p 模型分类 一般来说 p 2 p 系统分为集中式p 2 p 纯p 2 p 混合p 2 p 这三种结构 这些 结构具有各自不同的特点 集中式p 2 p 结构 集中式p 2 p 结构有一个中心服务器来负责记录共享信息以及回答对这些信息 的查询 l 这种结构具有中心化的特点 但是它不同于传统意义上的c s 模式 传统意义上的c s 模式采用的是一种垄断的手段 所有资料都存放在服务器上 客户机只能被动地从服务器上读取信息 并且客户机之间不具有交互能力 而集 第二章w e b 服务与p 2 p 技术简介 中式p 2 p 结构则是 所有网上提供的资料都分别存放在提供该资料的客户机上 服务器上只保留索引信息 此外服务器与对等实体以及对等实体之间都具有交互 能力 集中式p 2 p 结构如图2 5 所示 目录服务器保存系统中所有对象的对象名和指 针列表 当用户需要访问该对象时 首先通过对象名查询目录服务器 目录服务 器返回该对象的指针 用户通过该指针定位并访问对象 3 访问 图2 5 集中式p 2 p 结构 集中式的p 2 p 结构的优点是 简单 容易实现 采用这种结构的代表性软件 是n a p s t e r 不过集中式结构的缺点也很明显 中央目录服务器是潜在的性能瓶颈 当系统规模增大 对象数量增多时 目录服务器的负载会增大 对象定位操作的 性能会降低 集中式目录服务器的设置阻碍了系统向大规模扩展 纯p 2 p 结构 这种形式的p 2 p 结构不需要有中心服务器 其上的每一个p e e r 都作为对等 第二章w e b 服务与p 2 p 技术简介 实体 地位是完全平等的 1 4 1 每一个p e e r 既可以作为客户机又可以作为服务器 并且系统中的p e e r 有相同的能力 纯p 2 p 结构如图2 6 所示 图2 6 纯p 2 p 结构 采用这种结构的代表性软件是g n u t e l l a 这种纯p 2 p 模式不需要任何中央服 务器 因此没有任何节点会成为查询的瓶颈 任何节点的停机或离开 对整个系 统产生的影响很小 正因为如此 后文提出的三种模型都是基于纯p 2 p 结构的 混合p 2 p 结构 在纯p 2 p 结构中 选择出一些节点作为超级节点1 1 5 1 各个节点将要共享的 目录和文件信息发送到自己的超级节点 超级节点维护自己所属节点的共享文件 信息 各节点查询时将请求发送到自己的超级节点 超级节点之间采用消息机制 来发送查询和查询结果 超级节点将查询结果和其他超级节点返回的查询结果返 回给查询节点 混合p 2 p 结构如图2 7 所示 图中s 代表超级节点 1 2 第二章w e b 服务与p 2 p 技术简介 2 3 本章小结 图2 7 混合p 2 p 结构 本章介绍了w 曲服务和p 2 p 的相关知识 首先介绍了w e b 服务的概念 体系 结构及相关技术和标准 接着介绍了p 2 p 的研究背景 定义并将c s 结构与p 2 p 结 构做了比较 最后介绍t p 2 p 模型的分类 本章介绍的知识为后继章节中构建基 于p 2 p 的w 曲服务模型做了准备 第三章基于p 2 p 的w e b 服务的总体框架 第三章基于p 2 p 的w e b 服务的架构 由w e b 服务体系结构可见 服务发布和发现都以一个服务注册中心为基础 当系统访问量过大的时候 服务注册中心就成了系统的瓶颈 而且服务注册中心 的瘫痪将会导致整个w e b 服务系统的崩溃 如果把p 2 p 的思想引入到w e b 服务 体系结构中 系统中的服务分布在各个节点上 每一个节点既是w e b 服务的提 供者 又是w e b 服务的调用者 w e b 服务体系结构中不再需要服务注册中心 自然能有效的解决w e b 服务中的瓶颈问题 在p 2 p 计算平台上建立w e b 服务是 一种较理想的w e b 服务实现方案 可以利用p 2 p 本身优势高效地实现w e b 服务 3 1p 2 p 拓扑结构的划分 从p 2 p 系统的拓扑结构角度来讲 p 2 p 系统可分为结构化和非结构化两种类 型 拓扑结构是指分布式系统中各个计算单元之间的物理或逻辑的互联关系 结 点之间的拓扑结构一直是确定系统类型的重要依据 9 非结构化的p 2 p 系统中 节点采用了随机图的组织方式 由于没有确定拓扑结构的支持 非结构化网络无 法保证资源发现的效率 即使需要查找的目标节点存在 发现也有可能失败 系 统采用广播洪泛 随机漫步等算法 直径不可控 而且查找时会在网络中产生大 量的流量 耗费大量的网络开销 因此 系统可扩展性受到严重限制 2 0 结构化 的p 2 p 系统中的节点能够按照某种全局方式组织起来 查找速度快 而且可靠性 较高 从理论上来讲 只要资源存在 就能够被发现 正因为如此 我们提出的 模型都采用了结构化的p 2 p 系统 3 2 关键定义 q n t 务分布规则 p 2 p 网络是构架在现有物理网络之上的一层虚拟网络 系统中的一台主机称 为一个节点 定义3 1 基于p 2 p 的w 曲服务模型中 每个节点被分配唯一的整型标识符 我 1 4 第三章基于p 2 p 的w e b 服务的总体框架 们称此标识符为节点i d 即n i d 节点i d 可以由散列函数散列节点的i p 地址产生口1 1 即n i d f f i s o m e h a s h i p 由于我们的实验在内网中进行 节点i p 地址的前2 4 位都相同 为简单起见 取 节点i p 地址的最后8 位的十进制整数为节点i d 例如某节点i p 为1 0 8 6 0 1 2 那 么此节点i d 为十进制整数1 2 当然系统推广到更广的范围时 可以采用其他的 散列算法 定义3 2 若节点m 的标识符直接大于节点n 的标识符 那么节点m 称为节点 n 的后继节点阎 也就是说如果m 满足 m n i d m i n n i d l n i d n h i d 节点m 为节点n 的后继节点 表示为n s u c c e s s o r 定义3 3 若节点m 的标识符直接小于节点n 的标识符 那么节点m 称为节点 n 的前趋节点 也就是说如果m 满足 m n i d m a x n i d l n i d s s i d 节点m 为服务s 的后继节点 基于p 2 p 的w e b 服务模型中 服务分布是一个基本问题 分配方法是 系 统中的服务部署于其后继节点上 所以服务的后继节点又称为服务的装载节点 刚 基于p 2 p 的w e b 服务模型如图3 2 所示 图中s i 代表标识符为i 的服务 箭头表示装载关系 n i 图3 2 基于p 2 p 的w e b 服务模型图 1 6 第三章基于p 2 p 的w e b 服务的总体框架 例如 s 1 3 2 1 部署于其后继节点n 3 2 上 6 0 部署于其后继节点n 6 8 上 由图3 2 可以看出 节点与节点之间是平等关系 从功能角度看 各节点的 重要性相同 这主要体现在 各个节点的失效对整个系统的损坏程度是相同的 各个节点的工作负载相当 如果一个节点保存另一个节点的标识符 则称在这两个节点之间存在一个连 接 从理论上说 系统中的任何两个节点之间都可以建立一个连接 然而 两个 节点之间是否建立连接却是由模型采用的p 2 p 路由方法决定的 一次服务查询过 程中 从源节点到目标节点所经过的连接数 称为延迟渊 为了实现p 2 p 网络 每个节点上需要保存一个与其有连接关系的节点的标识符列表 称为路由表 一个好的p 2 p 模型必须具备如下几个特点 1 高效 体现在p 2 p 网络上 就是查询的平均延迟要小 2 高可用性t 体现在p 2 p 网络上 一个节点能够调用系统中任意节点上的 服务 而且能保证一定程度的正确性 3 高可扩展性 如果随着系统中节点的增加 节点的路由表尺寸会以一个 较快的速度增加 从系统实现的角度看 这样的p 2 p 网络的可扩展性就较差 3 3 本章小结 本章提出了基于p 2 p 的w e b 服务的架构 首先介绍了p 2 p 拓扑结构的划分 然后定义了基于p 2 p 的w e b 服务模型中的关键概念并对模型中服务的分布规则 做了说明 最后提出了好的p 2 p 模型的特点 接下来的三章 我们要介绍三种基 于本章提出的架构的w e b 服务模型 1 7 第四章直接查找方式的w e b 服务模型 第四章直接查找方式的w e b 服务模型 基于p 2 p 的w e b 服务中 根据路由方法的不同 我们提出了三种基于p 2 p 的w e b 服务模型 在这三种模型中 节点的路由表 服务的查找方法 系统性 能和应用范围都有各自的特点 本章介绍最简单的直接查找方式的w e b 服务模 型 4 1 直接查找方式的w e b 服务模型概述 在直接查找方式的w e b 服务模型中 为了便于查找 每个节点的路由表保 存系统中所有节点标识符 直接查找模型是实现p 2 p 模型的最自然的想法 系统 中的任何一个节点都保存所有节点的信息 查找时只需要访问本节点 我们的实 验中 用一个名为n o d c l i s t x m l 的文件作为路由表 此x m l 文件保存系统中所有 的节点i d 其格式如下所示 1 g 1 3 8 n o d e l i s t x m l 文件中的元素不需要按顺序排列 这是因为在查找的时候 会 把x m l 文件中的元素读到数组中进行排列 4 2 服务的发布 服务发布的关键问题是查找服务的装载节点 设节点n 欲发布服务s 发布 服务的方法为 节点n 散列服务名得到服务s 的标识符s s i d 然后n 查找其保 存的路由表n o d e l i s t x m l 解析x m l 文件中的元素 找到s s i d 的后继节点m 由节点m 的标识符得到m 的i p 地址 最后节点n 将服务s 部署到节点m 上 第四章直接查找方式的w e b 服务模型 服务发布算法如下 p u b l i s h s e r v i c 嘎s t r i n gs e x v i c e a a n s i d h a s h f u n c t i o n s e r v i c e n a m e 散列服务名得到服务i d h i d f i n 4 s u c c c s s 呱s 嗵n o d e l i s t x l n l 根据s i d 与n o d e l i s t x m l 查找该服务的后 继节点标识符 i p c o n v 凹t i p n i d g 将n i d 转换为i p 地址 d e p l o y s e r v i c e n a m e i p 部署服务到指定i p 上 根据s i d 与n o d e l i s t x m l 查找服务的后继节点标识符 s t r i n gf i n d s u c c e s s o r s t r i n gs i d n o l i s t x m l s t r i n g n i d l i s t p a r s e n o d e l i s t x n l l 懈析n o d e l i s t x m l 文件 得到系统中所有 们i 点标识符 将节点标识符按从小到大顺序排列 f o r i n ti 0 i s i d r e t u r nn i d l i s t i j 区回最小的大于s i d 的h i d r e t u r nn i d l i s t o 如果不存在大于s i d 的n i d 则返回最小的节点h i d 其中 用d o m 解析x m l 文件 d o m d o c u m e n to b j e c tm o d e l 是由w 3 c 推出的x m l 文档的编程接口规范 它与平台和语言是无关的 因而可以用各种 语言在各种平台上实现 对于标准d o m 而言 它提供的接口是一组可以描述 x l v i l 文档树型结构的对象 以及通过这些对象可以对x m l 文档操作的方法 应用程序只要调用这些对象以及对象操作就等于在操作x m l 文件 这样就简化 了x m l 文件的操作 使得编程接口足够的抽象 解析n o d c l i s t x m l 的方法如下 1 9 第四章直接查找方式的w e b 服务模型 s t r i n g p a r s e n o d e l i s t x m n d o c u m e n t b u i l d e r f a c t o r yd b f 2d o c u m e n t b u i l d e r f a c t o r y n e w i n s t a n c e 幻 d o c u m e n t b u i l d e rd b n u l l d b d b f n e w d o c u m e n t b u i l d e r o d o c u m e n td o e n u l l d o c d b p a r s e c n o d e l i s t x m l e l e m e n tr o o t d o c g e t d o c u m e n t e l e m e n t 0 n o d e l i s tn i d l i s t r o o t g e t e l e m e n t s b y t a g n a m e n i d s t r i n g f lt t n e ws 缸i n g n i d l i s t g e t l e n g t h 0 f o r i n ti o i n i d l i s t g e t l e n g t h 0 i e l e m e n th i d e l e m e n t n i d l i s t i t e m i t e x tt t e x oh i d g e t f i r s t c h i l d 0 n 田 t g e t n o d e v a l u e 0 a r r a y s s o r t t 0 r e t u r n t t 用一个例子来解释服务发布算法 n 8 欲发布一个服务名为g e t t i m e s e r v i c e 的服务 如图4 1 所示 首先散列服务名得到服务i d 按第三章提出的散列算 法 得到的s s i d 为6 2 然后查找服务s 的装载节点 n 8 查找其节点本身保存的 n o d e l i s t x m l 文件 找到n 6 8 为h i d 直接大于s i d 的节点 最后将服务部署到n 6 8 上 完成了发布过程 第四章直接查找方式的w e b 服务模型 a n 1 0 8 n 5 6 n l n 8 的路由表 1 8 3 2 5 6 6 8 1 0 8 1 3 8 n 5 6 图4 1 直接查找方式发布服务示意图 a n 8 查找节点本身保存的路由表 b 部署服务到装载节点过程 4 3 服务的发现 服务发现的关键问题也是节点定位问题 其算法与服务发布算法相似 若某 节点欲调用服务s 首先要散列服务名 得到该服务i d 然后找到服务s 的装载 节点n 进而得到节点n 的i p 地址 根据节点n 的i p 地址 即可调用该服务 服务发现算法如下 2 1 第四章直接查找方式的w e b 服务模型 f i n d s e r v i c e s t r i n gs e r v i c e n a m e s i d h a s h f u n c t i o n s e r v i c c n a m c 散列服务名得到服务i d n i d f m d s u c c e s s o r s i d n o d e l i s t x m l 根据s i d 与n o d e l i s t x m l 查找服务的后继 节点标识符 i p c o n v e r t i p n i d 将n i d 转换为i p 地址 c a l l i n g s e r v i c e n a m e i p 在指定i p 上调用服务 例如n 2 6 欲调用一个服务名为g e t t i m e s e r v i 的服务 散列服务名得到服务 i d 按第三章提出的散列算法 得到的s i d 为6 2 查找服务的装载节点 n 2 6 查 找其保存的路由表 找到n 6 8 为h i d

温馨提示

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

最新文档

评论

0/150

提交评论