【发布时间】:2011-02-15 18:30:54
【问题描述】:
我需要从 JavaSpaces 开始,我找到了 this 文章。但是我找到了 JINI 库并下载了它,但找不到 JavaSpaces 库。是搬到JINI还是什么?
【问题讨论】:
标签: java javaspaces jini
我需要从 JavaSpaces 开始,我找到了 this 文章。但是我找到了 JINI 库并下载了它,但找不到 JavaSpaces 库。是搬到JINI还是什么?
【问题讨论】:
标签: java javaspaces jini
有两个 JavaSpaces 的实现:Blitz 和 GigaSpaces XAP。 Blitz 是开源的; XAP 是商业版,但有一个免费使用的社区版。
我严重偏向 XAP;我为他们工作。 :) 也就是说,考虑 XAP 的原因有很多:
使用 GigaSpaces 获取空间引用的机制远比使用默认 JINI 更容易:
UrlSpaceConfigurer urlSpaceConfigurer = new UrlSpaceConfigurer("/./space");
IJSpace space = urlSpaceConfigurer.space();
// space is a close JavaSpaces analog, extended because the specification is rather limited
GigaSpace gigaSpace=new GigaSpaceConfigurer(space).gigaSpace();
// gigaSpace has **many** API improvements and is far more flexible.
默认的 JavaSpace API 不对空间中的多个元组匹配进行补偿。较新的(即 8 岁?)确实如此,并且 Blitz 实现了它,但它仍然不是很灵活。另外,您仍然会被 JINI Entries 卡住,它们遵循以下规则:
XAP 允许你使用 Entry,但不是必须的;使用 XAP,您可以使用普通的 POJO。由于通配符(null 是 JavaSpaces 通配符),您仍然希望更喜欢 Object 类型,但这取决于您。
XAP 还提供了 SQL 查询机制,以及条目的基于文档的模型(无模式),还可以使用 Spring 来管理通知和远程处理。
【讨论】: