Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
7年前关闭。
Improve this question
这种功能可以在服务器群集上运行应用程序,以分配负载并提供额外的冗余。
我看过GridGain的演示文稿,对此印象深刻。
认识其他人吗? Terracotta(open source, based on Mozilla Public License); Oracle Coherence(以前是Tangosol Coherence;商业;基于JSR 107,从未正式采用); GigaSpaces(商业;基于JavaSpaces API,是Jini的一部分); 您提到的 GridGain(开源:LGPL); 带memcached的 Java client library(开源:BSD License; EHCache(开源:Apache Software License; OSCache(开源:modified Apache License和 无疑还有其他几个。
现在我还没有使用所有这些,但是我已经使用或研究了其中的大多数。
GridGain和GigaSpaces比cache更集中在grid computing上,并且(imho)最适合计算网格而不是数据网格(请参阅this explanation of compute vs data grids)。我发现GigaSpaces是一种非常有趣的技术,它具有多个许可选项,包括免费版本和面向初创企业的免费完整版本。
Coherence和Terracotta尝试将缓存视为Maps,这是相当自然的抽象。我已经使用了很多Coherence,这是一款出色的高性能产品,但并不便宜。我不太熟悉的兵马俑。我有时会缺少有关Coherence的文档,但它确实是功能强大的产品。
OSCache我主要用作减少Java Web应用程序中内存使用和碎片的一种方法,因为它具有相当整齐的JSP标签。如果您曾经看过已编译的JSP,您会发现它们执行了很多String串联。此标记使您可以有效地将JSP代码和HTML的结果片段缓存到单个String中,这在某些情况下可以极大地提高性能。
EHCache是一个简单的缓存解决方案,我也在Web应用程序中使用过。绝对不要作为分布式缓存,但是它可以做到。我倾向于将其视为快速而肮脏的解决方案,但这也许是我的偏见。
memcached在PHP世界中尤为流行(并被Facebook等网站所使用)。这是一个非常简便的解决方案,它的优点是它不会在同一过程中运行,而且如果对您来说很重要,那么可以说您可以与其他技术堆栈有更好的互操作性选项。
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
7年前关闭。
Improve this question
这种功能可以在服务器群集上运行应用程序,以分配负载并提供额外的冗余。
我看过GridGain的演示文稿,对此印象深刻。
认识其他人吗?
最佳答案
有几个:
现在我还没有使用所有这些,但是我已经使用或研究了其中的大多数。
GridGain和GigaSpaces比cache更集中在grid computing上,并且(imho)最适合计算网格而不是数据网格(请参阅this explanation of compute vs data grids)。我发现GigaSpaces是一种非常有趣的技术,它具有多个许可选项,包括免费版本和面向初创企业的免费完整版本。
Coherence和Terracotta尝试将缓存视为Maps,这是相当自然的抽象。我已经使用了很多Coherence,这是一款出色的高性能产品,但并不便宜。我不太熟悉的兵马俑。我有时会缺少有关Coherence的文档,但它确实是功能强大的产品。
OSCache我主要用作减少Java Web应用程序中内存使用和碎片的一种方法,因为它具有相当整齐的JSP标签。如果您曾经看过已编译的JSP,您会发现它们执行了很多String串联。此标记使您可以有效地将JSP代码和HTML的结果片段缓存到单个String中,这在某些情况下可以极大地提高性能。
EHCache是一个简单的缓存解决方案,我也在Web应用程序中使用过。绝对不要作为分布式缓存,但是它可以做到。我倾向于将其视为快速而肮脏的解决方案,但这也许是我的偏见。
memcached在PHP世界中尤为流行(并被Facebook等网站所使用)。这是一个非常简便的解决方案,它的优点是它不会在同一过程中运行,而且如果对您来说很重要,那么可以说您可以与其他技术堆栈有更好的互操作性选项。
10-04 10:06