您现在的位置是: 软件 > 开发者网络 > 程序方舟 > Java专栏 > 正文


-打开闪烁的新世界:体验Flash MX
-文字在平面设计中的运用
-Visual C++多媒体及图形、图像处理
-你会用3D Flash Animator吗?

P2P的Jxta解决之道
2002-03-30· ·QQ新人类编译··yesky

上一页  1 2 3 4 5 6  

  Jxta团体项目

  上面已经提到过,Jxta项目是由一个开放的团体参与的,包括开放源代码的开发者、热衷技术者和理论家。任何人都可以参与到其中去以带动技术的发展。Jxta.org包含有许多有兴趣的项目。以下我们将提到其中的一些。

  Jxta shell

  Jxta shell是一个建立在Jxta Java捆绑上面的例子应用。它通过命令行的方式对Jxta环境提供交互性的访问。它类似Unix shell,并且提供一个相似的命令来访问Jxta。你可以在shell的主页(http://shell.jxta.org/)上下载Jxta shell,并且很容易地进行安装和设置。Jxta shell的命令是有意地与Unix的命令类似。Jxta shell也支持管道命令(|)。

  Jxta shell被设计为大部分的命令都与shell框架分离,并且在调用的时候动态装载。这样就可以允许开发者很容易地为shell加入他们自己的命令。一些内置的shell命令是:

  man

  man命令是Jxta命令的一个指南系统。该命令提供Jxta shell全部命令的一个列表。你可以使用man <命令名>来得到一个命令的信息

  clear

  clear命令清空shell的屏幕

  env

  env命令显示所有shell连接的环境变量值。默认定义了7个环境变量值:

   consin: 默认的控制台输入管道

   consout: 默认的控制台输出管道

   stdin: 默认输入管道

   stdout: 默认输出管道

   stdgroup: 默认节点组

   rootgroup: 默认网络节点组

   shell: Root shell

  setenv

  设置一个shell环境变量

  cat

  cat命令打印Jxta对象的内容

  whoami

  显示一个节点或者节点组的信息。如果没有参数,它显示本地节点的信息

  rdvstatus

  显示当前连接该节点的所有集合节点。它还显示该节点自身是否是一个集合节点(rendezvous peer)。

  peers

  使用peers命令来发现在同一个节点组中的其它节点。不带参数运行该命令显示当前节点知道的节点列表。你可以这样做是由于shell发现的节点广播都是有缓冲的。带有-r参数时会发送一个发现的请求来查找远程的节点。你可以使用peers -f命令来清空缓冲的节点广播。

  groups

  groups命令类似peers命令;它发现节点组。

  importfile

  导入一个外部的文件到shell环境变量

  exportfile

  将shell环境变量的内容导出到一个外部的文件中。

  mkadv

  mkadv命令由一个shell环境变量构造一个广播。广播可以是一个节点组广播或者是一个管道广播。

  mkpgrp

  mkpgrp命令使用一个节点广播来创建一个新的节点组。如果没有定义广播,shell创建一个网络节点组的一个克隆。

  join

  join命令允许一个节点加入一个节点组。

  leave

  leave命令可令一个节点离开一个节点组(该节点是通过join命令加入该组的)。

  mkpipe

  mkpipe创建一个输入或者输出管道。管道是由一个输入管道广播文档创建的。

  talk

  talk命令可用来在两个远程节点间传送简短的即时信息。它由三个步骤构成。首先用户要登记。它为该用户创建一个新的talk广播,该步骤只需要进行一次。用户通过talk -register 命令来登记。第二,在登记完成之后,用户在聊天之前,必须要登录。登录通过talk -login 命令来进行。用户可以使用talk -search命令来搜索其它的用户。第三,在找到其它用户之后,他可以使用talk -u 来发送信息。

  exit

  exit命令用来退出shell。

  Jxta内容管理服务(Jxta Content Manager Service)

  Jxta的内容管理服务通常称为CMS,允许共享和得到内容--通过一个在节点组中唯一的内容ID表示。CMS还拥有一个内容广播的特性,可以提供关于内容的元数据(metadata)。此外,该服务还允许在本地节点上进行内容管理。它还让一个节点由远程节点浏览和下载内容。

  InstantP2P

  InstantP2P是在Jxta上实现的一个点对点即时信使。它包含的功能有,一对一即时信息,组聊天,文件共享等。它可以在Linux、Solaris和Win32平台上使用。运行Personal Java 3.1的设备也可以支持InstantP2P。

  InstantP2P是一个学习Jxta的好例子。用户可以使用他们选择的昵称登录到该应用中。他们可以搜索在网络上的所有Jxta组,并且根据自己的兴趣加入组。用户可以查看组成员中的所有节点。聊天功能既可以是一对一的,也可以是组的,即可让用户与一个组聊天。Share功能可让用户与其它组的用户共享内容。用户也可以搜索组中共享的内容。InstantP2P的内容使用内容管理信使服务来进行文件共享。

  Jxta的承诺

  在这篇文章中,我介绍了点对点的网络。你也可以了解到Jxta会为P2P世界带来些什么东西。我也介绍了其中的一些重要术语和概念,它们都会在使用Jxta创建P2P应用时涉及到。

  Jxta的承诺是作为一个用作P2P应用开发的低级别平台。今天,该技术还是处在一个起步的阶段,随着时间的推移,它将成为一个成熟的技术,可以为P2P计算提供一个强大的、可靠的架构。由于Java可在异构的环境下应用,因此它是进行P2P应用开发的适合之选。我希望这篇文章可以引起你探索P2P领域和Jxta的兴趣。



上一页  1 2 3 4 5 6  

【责任编辑:方舟】
【发表评论】【关闭窗口】
■ 相关内容
 使用C#开发一个简单的P2P应用
 P2P技术与软件纵横
 众智数码:中国P2P业内标准的制定者?
 P2P技术概览
 P2P能做什么
 P2P的赢利之路
 P2P在国外
 P2P――网络世界新革命
 P2P,路在何方?
感谢 访问天极网,如果您觉得该文章涉及版权问题,请看这里!