6

可以在 Java 中使用的最好的开源分布式缓存是什么?

我以为是 EHCache,但显然只有在使用商用产品 Terracotta Server Array 时才能在多个节点上进行扩展。

我的目标是实时为流数据构建缓存,有一定的延迟,我实际估计的数据大小在 8gb 左右,而生产速度要慢得多,大约为每秒 3mb。

由于存在初始延迟,我希望我的缓存也被复制,因为当从 0 开始时,我的缓存需要一个预热期,我非常有兴趣避免。

4

6 回答 6

4

Memcached值得研究。

于 2012-09-18T10:00:33.867 回答
2

我建议您看一下名为Hazelcast的产品, 尽管它本身不是分布式缓存,而是一个非常可扩展且非常易于使用的数据网格。

顺便说一句,如果您能告诉我们有什么要求可能会更好,有很多开源产品可能适合您的需求......

希望这可以帮助

于 2012-09-18T12:41:13.953 回答
2

您不需要 Terracotta 的商业许可证来集群您的(Eh)缓存......使用多个条带时确实需要许可证,但一台服务器(可能是被动服务器)不需要任何许可证

于 2012-09-26T19:45:45.520 回答
2

Apache Ignite 有一个功能丰富的分布式数据网格,它当然支持分布式缓存。您可以在此处找到更多信息:https ://ignite.apache.org/features/datagrid.html

于 2017-04-14T00:12:56.360 回答
1

试试 TayzGrid,它是一个开源内存数据网格,也称为内存数据网格。

OP:我的目标是实时为流数据构建缓存,有一定的延迟,我实际估计的数据大小在 8gb 左右,而生产速度要慢得多,大约 3mb 每第二。

开源版本已准备好生产,可轻松满足 100GB 的数据。与此相比,您的数据非常小:)

OP:我希望我的缓存也能被复制

你的愿望已经实现:复制缓存。报价;

两个或更多内存数据网格服务器形成一个复制缓存集群。每个数据网格服务器都包含数据网格中的所有数据。在任何服务器上执行的任何更新都以同步方式传播到集群中的所有其他服务器

于 2015-09-17T11:44:16.917 回答
0

您可以使用 memcached

或 Redis (http://code.google.com/p/redis/) --> 存储不是易失的

或 twemcache (http://engineering.twitter.com/2012/07/caching-with-twemcache.html)

于 2012-09-18T17:09:34.560 回答