知识大全 P2P的Jxta解决之道

Posted

篇首语:看书和学习是思想的经常营养,是思想的无穷发展。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 P2P的Jxta解决之道相关的知识,希望对你有一定的参考价值。

P2P的Jxta解决之道  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

       摘要  点对点(P P)网络无疑是当前最热门的话题之一 在这个领域中 Sun推出了Jxta 一个用于P P应用开发的网络计算平台 这篇文章介绍P P和Jxta在这方面所作的努力 适合有意开发P P应用的编程者阅读   今日的Internet正面临着一场革命 这场革命正在为改变Internet的一个基本的特性而努力 这就是网络的终端(或者说客户端) 例如桌面电脑 移动电话 PDA等正要求一个更优越的网络地位 以结束以服务器为主导的Internet 这就是P P   P P是一个网络的模型 它的基本概念就是任何的节点都可以作为服务器或者客户端 传统的客户/服务器网络 都有预定义的客户和服务器节点 而P P则不同 P P可提供一些额外的特性 而这些特性使用传统的模型是无法实现的   在这篇文章中 我将为你介绍P P网络 并且将它和客户/服务器网络作对比 我还会介绍Jxta(发音是jux ta) Jxta是由Sun的首席科学家兼CEO Bill Joy提出来的 Jxta正在被成千上万的开放源代码开发者模型化 在P P领域中 Jxta作出了巨大的改进 它定义了一套的协议 开发者可以使用这些协议来建立几乎所有的P P应用 同时 这些协议也非常灵活 可以适合不同应用的特别需要 Jxta也不使用特定的编程语言或者环境 不过Java无疑是一个适合的选择 原因在于 便携性 容易开发和丰富的类库   P P 概览  现今最普遍的分布计算模型是客户/服务器模型 图一描绘的就是典型的客户/服务器架构        *****图一*******   在客户/服务器体系中 客户请求服务 服务器提供服务 在当今的Internet上 存在在大量的服务器 Web服务器 邮件服务器 FTP服务器等等 客户/服务器体系是中央化体系的一个例子 整个的网络都依靠中央的节点和命名的服务器来提供服务 如果没有服务器 网络将是毫无意义的 如果没有它们 Web浏览器如何工作?不论客户端或者浏览器的数目有多少 网络只能在服务器存在的前提下才有意义   和客户/服务器体系相似 P P也是一个分布的计算模型 但是有一个很大的不同 P P是一个非中央化的体系(如图 ) 在网络中并没有客户或者服务器的状态区分 网络中的每个实体都是同等的 有着同样的状态 这意味着一个实体可以请求一个服务(客户端的特性)或者提供一个服务(服务器的特性) 图 展示的是一个P P网络     *****图 *********   虽然每个节点在网络中有着同等的状态 不过它们并不要求都有着同样的物理性能 一个P P网络可以包含有不同性能的节点 由移动设备到大型机 对于一个移动设备来说 可能由于自身的限制 不能作为服务器 但从网络方面来说 并没有这个限制   两个网络模型都有着各自的优点和缺点 由图 的客户/服务器网络你可以看到 当网络增大时(即越来越多的客户加入) 中央服务器的压力就越大 当加多一个客户 中央节点的性能就会弱化 而它的失效将会导致整个网络的瘫痪   对于P P网络来说 情况就完全不一样了 由于网络中的每个实体(或者节点)都是积极的参与者   每个节点都会为网络提供一些资源 例如存储空间或者CPU 当越来越多的节点加入网络时 网络的性能将会增长 因此 当网络增大时 它的性能也会增强 你将不会碰到客户/服务器体系中的扩展问题   P P网络和客户/服务器模型还有一个很大的不同是 即使只有一个节点是活跃的 P P网络也被认为是活跃的 只有在没有任何节点时 P P网络才是不可用的   不过 金无足赤 虽然P P网络有着这些的优点 但你也要付出一些代价的 首先 管理这样一个网络可能是一个噩梦 而在客户/服务器网络中 你只需要管理中央的节点 因此 无论在安全策略和备份策略方面 P P网络都要复杂一些 第二 P P协议比传统的客户/服务器协议需要更多的 交互 例如当节点加入或者退出网络 这些方面都会对性能产生一些影响   Jxta的解决之道    不同的协议 不同的体系 不同的实现 这就是当前P P解决方案的精确描述 现今 开发者使用各种各样的方法论和途径来创建P P应用 相对于客户/服务器模型丰富的标准 P P领域的标准可以说是很少 为此 Sun开发了Jxta   以下是Jxta前景的一些陈述   Jxta工程是为了建立核心的网络计算技术 它提供一套简单 精简和便利的技术 可以在任何的平台 任何地点和任何时间支持P P计算 该工程首先概述了P P的功能 然后建立核心的技术 以弥补当前P P计算方面的不足 它集中于创建基本的技术 并且将策略的选择权交给应用的开发者   Jxta致力于提供一个基本的P P架构 这样其它的P P应用可以建立在上面 这个基架包含有一套协议 这些协议与语言 平台和网络都是无关的(这就是它们对底层的网络没有作出任何的假定) 这些协议只规定了建立普遍P P应用的必要之处 它的设计是精简的 开销很小 这些协议的目的可引用Jxta前景陈述中的一句话来说明 要令每个设备都带有一个数字的心跳   当前的Jxta定义了六种协议 不过并不要求所有的Jxta节点都实现全部六种协议 节点实现的协议数目和它的性能有关 一个节点可以只实现一种协议 根据需要 节点也可以扩展或者替换任何的协议   有一点要注意的是 Jxta协议自身并不提供交互性 对于这一点 你可以通过TCP/IP来理解这一点 虽然FTP和HTTP都建立在TCP/IP上 不过你不能使用FTP客户来访问网页 Jxta也是这样 两个建立在Jxta上的应用并不意味着它们是可以交互的 这一点应该由开发者开保证 不过 由于Jxta提供了一个可交互的基层 所以开发者在实现交互时可以少考虑一些东西   Jxta中的XML  毫无疑问 要提供一个通用基本协议层 第一步就是要采用一种适合的表现方式 这种方式可以被当前的大部分平台明白 XML无疑是一个理想的选择 它已经成为数据交换的一个默认标准 XML提供通用的 语言和平台无关的数据表现 XML也可以很容易地转换为其它的编码 因此 用XML格式定义了所有的Jxta协议   虽然Jxta的信息使用XML定义 不过Jxta并不依靠XML来编码 实际上 Jxta实体并不需要一个XML解析器 它是一个可选的组件 可以将XML看成是Jxta使用的一种便利的数据表现形式 小的实体(例如移动电话)可以使用预编译的XML信息   Jxta的术语    在更进一步讲述Jxta之前 让我们先来看一下它的各种术语   Peers(节点)  网络上实现一种或者多种Jxta协议的任何实体 一个节点可以是任何的东西 例如大型机 小至一部移动电话 甚至是一个传感器 节点的存在是独立的 并且可以与其它节点异步通信   Peer groups(节点组)  有者共同目的的节点可以集合起来形成节点组 节点组可以跨越多个物理网络域   Messages(信息)  在Jxta的网络中 所有的通信是通过发送和接收信息来实现的 这些信息称为Jxta messages 它们符合标准的格式 是交互的前提   Pipes(管道)  Pipes在Jxta的环境里建立起虚拟的通信管道 节点通过它们来发送和接收Jxta的信息 Pipes被认为是虚拟的 因为Pipes无需要知道使用它们的真正网络地址 这是一个重要的抽象   Services(服务)  Peers和Peer groups都可以提供服务 如果一个服务由一个peer独立提供 那么就被称为是一个Peer服务 这是一个和中央化相等的概念 没有其它的Peer需要提供该服务 如果该Peer没有活动 那么服务将无效   Peer groups提供的服务被称为是peer group服务 与peer服务不同 这些服务并不依赖某个单独的peer 而是由整个组提供 Peer group服务的可用性更强 因为即使一个peer不可用 其它的peers还可以继续提供相同的服务   Codats   Codat (Code/Data) 在Jxta中 它意味着可以是代码或者数据的内容 如果有需要 Codats可以被发布和复制   Advertisements   Advertisement可发布和揭露任何的Jxta资源 例如一个peer 一个peer组 一个管道或者codat Advertisements以XML文档的方式来表现   Identifiers(标识符)  在Jxta环境中 Identifiers扮演着重要的角色 Identifiers指定资源 而不是物理的网络地址 Jxta的Identifier被定义为一个URN(Uniform Resource Name 统一资源名) 一个URN就是一个URI(Uniform Resource Identifier 统一资源标识符) 它必须是保持全局唯一的 即使是该资源不存在了 它仍然要保持不变   World peer group   任何一个Jxta peer 在默认的情况下都是World peer group的一个成员 每一个Jxta peer都知道World peer group 并且可以加入该peer组 即使它在网络上找不到任何其它的peers 即使断开的peer也是其中的成员   Net peer group   在一个本地网络中 网络管理员通常都可以设置一个peer组 该组可以让网络上的任何peer加入 这就是Net peer group 它类似一个DHCH(dynamic host configuration protocol 动态主机配置协议)服务 该Net peer group可为peer提供一个全局的连接 它的限制由管理者定义   Rendezvous peers(集合点)  一个集合点是一个特别的节点 它通过缓冲节点的广播 可以存储其它节点的信息 因此 一个集合点可以帮助节点发现网络上的其它节点 集合点还可以将搜索的请求导向到其它的集合点   Endpoints(终点)  终点表示网络上的一个目的地 它可以由一个网络地址来表示 Peers通常都不直接使用终点 而是通过管道来间接使用它们 管道都建立在终点上   Routers(路由器)  在Jxta的网络上移动包的东西均被称为Jxta路由器 并不要求所有的peers都是路由器 不是路由器的pe cha138/Article/program/Java/gj/201311/27532

相关参考

知识大全 如何使用JXTA技术建立P2P网络

如何使用JXTA技术建立P2P网络  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  作者朱传辉  

知识大全 讲述Jxta的故事(1)

把P2P进行到底:讲述Jxta的故事(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Jxt

知识大全 讲述Jxta的故事(2)

把P2P进行到底:讲述Jxta的故事(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在Jx

知识大全 属性(资源)文件乱码问题的解决之道

Struts1.x系列教程(3):属性(资源)文件乱码问题的解决之道  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快

知识大全 2010年国考面试瓶颈问题解决之道

在公务员面试过程,考生一直存在两大瓶颈,一是缺乏灵活的现场应对力,二是快速积累理论存在问题。万学金路公务员考试中心的老师将为考生提出解决之道。案例一:应届生小王,理论知识丰富,但因为社会阅历不深,在面

探索历史遗留污染问题的解决之道

一、我国历史遗留污染危害逐渐凸显目前我国正处于社会发展的转型期,各种错综复杂的社会矛盾和新老问题集中爆发,各级政府面临巨大的压力和挑战。其中,环境问题及其引发的社会问题尤为突出,并且正以迅猛的速度增加

探索历史遗留污染问题的解决之道

一、我国历史遗留污染危害逐渐凸显目前我国正处于社会发展的转型期,各种错综复杂的社会矛盾和新老问题集中爆发,各级政府面临巨大的压力和挑战。其中,环境问题及其引发的社会问题尤为突出,并且正以迅猛的速度增加

探索历史遗留污染问题的解决之道

一、我国历史遗留污染危害逐渐凸显目前我国正处于社会发展的转型期,各种错综复杂的社会矛盾和新老问题集中爆发,各级政府面临巨大的压力和挑战。其中,环境问题及其引发的社会问题尤为突出,并且正以迅猛的速度增加

知识大全 JXTA概念介绍(翻译)

JXTA概念介绍(翻译)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  .JXTA定义  JXT

知识大全 JXTA下的媒体数据传输

JXTA下的媒体数据传输  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Sun微系统公司公开了旨