【问题标题】:Differences between Ehcache 3 OffHeap storage and BigMemoryEhcache 3 OffHeap 存储与 BigMemory 的区别
【发布时间】:2017-01-27 10:47:14
【问题描述】:

在 Ehcache 2.X 中,堆外存储可使用 Terracotta 的 BigMemory 商业产品。但是,从 Ehcache 3 开始,堆外存储似乎是免费的。

我想知道 BigMemory 产品是否已经迁移到 Ehcache 3,如果它们是不同的产品,它们之间有什么区别?

谢谢,

参考资料:

【问题讨论】:

    标签: ehcache ehcache-bigmemory


    【解决方案1】:

    BigMemory 是 product 的商业名称,即 Ehcache + Terracotta 集群 + 堆外内存以及其他企业独有的功能,例如安全性。

    Offheap 是允许在 Java 世界中使用不受垃圾收集器控制的内存的技术的名称。

    Offheap 在 2015 年初是 open sourced by Terracotta,它再次为 Ehcache 提供了一个开源集群解决方案。这是 Ehcache 2.10.0 的主要功能,它与 Terracotta server 4.3.0 一起使用,Terracotta server 4.3.0 使用堆外存储作为服务器端存储。

    Ehcache 2.x 没有开源中可用的堆外功能。但是,Ehcache 3.x 确实有它。保持这种差异的主要原因在于工程资源和推广新版本库的意愿。

    开源的底层堆外实现实际上已经在 Terracotta 商业产品中使用了多年,因此是一个经过生产测试的库。

    注意:我在 Ehcache 和相关库/产品上为 Terracotta 工作。

    【讨论】:

    • Ehcache 3.4版本兼容JDK 1.6吗?这个版本的堆外Bigmemory功能也是免费的吗?
    【解决方案2】:

    查看源代码。我看到 Ehcache 3 在内部使用了在 Apache 下获得许可的 Terracotta 库。 Ehcache 3 offheap classTerracota lib.

    import org.terracotta.offheapstore.MetadataTuple;
    import org.terracotta.offheapstore.Segment;
    import org.terracotta.offheapstore.concurrent.AbstractConcurrentOffHeapCache;
    import org.terracotta.offheapstore.pinning.PinnableSegment;
    import org.terracotta.offheapstore.util.Factory;
    

    【讨论】:

      猜你喜欢
      • 2011-07-12
      • 2011-06-20
      • 1970-01-01
      • 1970-01-01
      • 2013-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多