分布式计算技术的比较:Jini, Jxta and Web Services

02-12-19 banq
网络就是计算机,SUN当初推出Java时就喊出这个口号,最近微软又在喊这个口号,

这个口号的真正实施实际变成了分布式计算标准的竞争,Web Services无疑是现在

风头正劲的。

但是Web Services是基于HTTP协议,而Jini和Jxta则可以直接基于TCP或UDP(QQ是基于UDP

协议的,QQ的使用一点不亚于新浪等网站的WEB使用),因此它们应该说是互补,可以共生的。

Jini和Web Services的共同特点都有相差不多的Lookup和Discovery机制:client通过lookup

查找提供相应Service的Server,然后彼此直接建立连接。Jini还有一个Join机制。

推荐SUN公司的这篇关于三者技术比较的文章,也许对你了解分布式架构技术有所帮助,文章

从协议和网络角度比较了这三个技术,总结如下:

直接调用socket:

反应时间最快;

传输消耗为0;

但是

网络必须是可靠稳定的;

网络拓扑结构不能改变;

网络种类必须是同质的;

可能比较难于管理;

网络安全无保障;

Web Services:

非常容易管理维护;

无带宽要求;

对网络的稳定性要求也不高;

当然还有一个更大的优点(文章没有列出):不必一定基于Java,所以微软才大力推行它,

如果你的系统完全基于Java(强烈建议),Web Services基本就是鸡肋;

jini基本上类似直接调用socket,还有两个优点就是对带宽无要求 和网络种类无要求;同时继承

了web sercies的优点之一:易于管理。

响应时间还可以,但是可能在传输层上性能有所消耗。

Jxta是最安全的(因为是p2p 点对点啊),可能依赖带宽速度,其它和Jini差不多。

文章连接:http://developer.java.sun.com/developer/onlineTraining/webcasts/20plus/pdf/mgoff.pdf

         

iceant
2002-12-19 13:53
很早以前买过一本<<Distribute Operation System>>的英文书,

一直没看,最近开始当休闲读物看了一点,感觉写得很通俗易懂。

对了解分布式系统有帮助

iceant
2002-12-19 13:55
呵呵,那本书叫 Distribute Operation System.

另,给 Banq 的 Jive 提个建议,把 HTML 解析去掉,只支持 UBB 代码。

或都自动将< 转换成 &lt;

banq
2002-12-19 14:29
Jini 是一种连接分布式服务以及集中式服务定位器(lookup service)的机制,

而JXTA是一种在peer-style网络中连接连接分布式服务, 如果在JXTA中的Peer或者Peer组

提供一种特别的服务,这样就可以通过查询lookup service获得这种服务。

Jini是注重在服务的注册,发现,事务跟踪以及服务的租用;而JXTA注重在一个面向Peer的

计算模式:支持Peer组,Peer管道以及Peer广播,这些只要在Jini Service Registrar中

建立一个连接就可以。用这种办法,Jini和JXTA能够提供建立分布式服务的强有力的工具。

并且能够和其它技术和语言整合在一起(因为JXTA是语言无关性)

banq
2002-12-19 14:31
to iceant

了解分布式计算的理论就象了解Internet的理论一样,于实际意义不大,最近我们有个分布式计算的架构,不能用J2EE,我觉得Jini不错。

猜你喜欢
2Go 1 2 下一页