什么你会推荐一个大规模的Java数据的网格技术:兵马俑,GigaSpaces、一致性,等等?[关闭]

StackOverflow https://stackoverflow.com/questions/539985

我一直在读关于所谓的"数据网格"的解决方案的Java平台,包括陶器,GigaSpaces和一致性。我想知道,如果任何人有真实世界的工作经验任何这些工具以及可以分享他们的经验。我也很好奇的知道什么规模的部署人曾与:我们在谈论的2-4节点集群或有你工作有什么比?

我吸引到赤土,因为它的"放在"支持对于休眠和春季,两个我们使用严重。我也喜欢它如何装饰码基础结构并不需要你的节目对"网格API。" 我不知道有任何优势的工具,其使用方法的一个明确的API但很想听到有关他们,如果他们这样做事实上是存在的。:)

我也花时间阅读有关缓存,但我更感兴趣听到的反馈这三个具体的解决方案。我会想听听他们如何衡量了对缓存在事件中有人使用这两者。

有帮助吗?

解决方案

我们有运行一个web服务的应用程序50级的服务器,并且所有这些服务器是使用负载平衡BIGIP。该要求是缓存每个用户的状态,以便后续状态不会做同样的处理,并从以前的状态的数据。通过这种方式,web服务的客户不需要维护状态。

我们使用兵马俑缓存状态,从来没有遇到任何性能问题。在高峰时间请求应用程序的数量变得越来越为100每秒。

其他提示

您可能还需要检查出 Hazelcast 。 Hazelcast是一个开源事务,分布式/分区执行队列,主题,地图,设置,列表,锁和执行服务。这是超级容易的工作;只需添加hazelcast.jar到CLASSPATH并开始编码。几乎没有配置是必需的。

Hazelcast 下Apache许可证和企业级支撑被解除也可用。代码在谷歌代码

图书馆你们选择实际上取决于应用程序和什么你要试图来实现。

我曾为一家商店,使用协调一致提供了可扩展性(和冗余,排序)为它的网络应用程序。我们发现你已经有约4-5节点开始得到任何好处,从协调一致(2或3节点可能会降低性能)。我相信Oracle的文档说你需要多很多(30个)节点真正地得到好处的协调一致。如果你去与一致性,确保你得到你的硬件设置了正常-这是非常敏感的延迟。

我会远离一个"drop-in"的东西。他们可能会给你的东西开始,但最终你会遇到同步或表现问题和将要开始编写代码,具体到你的网层无论如何。基本上,你知道你的应用比比库,并将能够找出哪些项目需要在高速缓存,多久,他们需要的生活,怎么你的应用程序将使用,等等。

我没有这些技术足够的经验,但我觉得的Apache Hadoop的被证明是可扩展的和可靠的。雅虎跑了它在万芯Linux集群

它基于谷歌的MapReduce算法

本文介绍MapReduce和为什么你应该关心它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top