2011-05-24 43 views
3

两个Java程序具有相互沟通,要做到这一点,我发现两种可能性过程通讯,JavaSpaces的

  • 使用套接字
  • 使用JavaSpaces的

寻找到的描述之后,我发现,JavaSpaces显然是更好的解决方案。可悲的是,我无法让它运行。自从totourial根我到另一个安装过程中,其他文件等.... :(

如何安装JavaSpaces的,在哪里下载他们等?

如果有人为我提供了一个更好的解决方案,这我“会是感谢(JavaSpaces的似乎是从2005)

这是我迄今为止所发现的网站: http://www.jroller.com/matsh/entry/intreagued_by_javaspaces_try_blitz (安装说明,不工作...) http://www.jini.org/wiki/Main_Page (下载链接被破坏) http://www.jarvana.com/jarvana/inspect/com/sun/jini/jini-starterkit/2.1/jini-starterkit-2.1.zip?folder=jini2_1/ (下载jini入门工具包)

+0

我不认为你可以做出这样一个大胆的声明“JavaSpaces是更好的解决方案”,而实际上并没有考虑在这些过程之间需要什么类型的通信 - 正确的工作的正确工具,对吗?那么你可以扩展一下你需要什么样的进程间通信吗? – Liv 2011-05-24 09:49:49

+0

我需要在进程之间交换对象。如果我使用套接字来做,我必须通过一个端口在彼此之间发送它们,接收消息等......它明确地看起来比在内存中使用共享空间看起来更多的工作,其中两个进程都可以放置对象并通知更新。 (但它只是一个假设,这就是我想尝试一下的!) – Stefan 2011-05-24 10:09:09

回答

3

对于一个快速入门使用GigaSpaces的,商业JavaSpaces的产品(提供一个社区版),请参阅http://www.gigaspaces.com/wiki/display/XAP8/Data+Grid+Quick+Start

另见http://replay.waybackmachine.org/20070202031207/http://www.theserverside.com/tt/articles/article.tss%3Fl%3DUsingJavaSpaceshttp://www.theserverside.com/news/thread.tss?thread_id=42164http://www.enigmastation.com/?page_id=425

JavaSpaces的是伟大的,国际海事组织(我有偏见,因为我在为GigaSpaces工作......但是再次,我为GigaSpaces工作,因为我认为它的底层技术非常棒。) - 它有一个非常简单的API,但事务模型实际上非常强大,并且它的速度非常快,为。它比JMS更简单,更强大,并且具有更简单的部署/连接模型。

如果你是GigaSpaces厌恶出于某种原因(“哎呀,有人从这赚钱”),你也可以看看闪电战。

+0

谢谢,但我已经深入到Java“远程方法调用”(RMI)中。 GigaSpaces会以多少海岸顺流而下。 (在快速查看主页后,我无法找到它:P) – Stefan 2011-05-25 08:31:25

+0

这取决于该项目 - 您可能正在寻找社区版。如果你现在进入RMI,我并不担心 - 你很快就会厌恶它并开始寻找替代品。 :) – 2011-05-25 10:11:04

2

In Feb 2009 another user on SO mentioned,即GigaSpaces是JavaSpaces的成熟版本。

看着那个老问题,我开始相信JavaSpaces已经死了。

+0

好的,生病了看看吧 – Stefan 2011-05-24 10:05:50

+1

JavaSpaces没有任何措施死掉。这不是很受欢迎。 GigaSpaces通过扩展基础API并在其上封装其他API来改进它,因此您可以通过JMS,memcached,JPA,JDBC,地图API和文档API等来使用JavaSpaces。 – 2011-05-24 10:49:45

2

你是否考虑过使用类似RMI的东西,在透明的情况下调用远程系统上的方法? 或JMS,您只需发送和阅读消息 - 基础架构将它们路由到正确的位置/进程? 或者如果你有另一种方法,你有一个网络缓存(例如memcached),其中两个进程可以放入或从缓存中获取项目 - 从而在一定程度上允许进程间通信?

+0

你有一个RMI的例子(阅读它,但找不到工作示例) – Stefan 2011-05-24 10:25:48

+1

Sun(甲骨文我的意思是)有一个有关工作代码的RMI教程 - 在这里:http://download.oracle.com/ javase/tutorial/rmi/index.html – Liv 2011-05-24 10:27:01