Java 大型非堆内缓存
OHC - 非堆缓存 =======================
本项目不再维护了!!!
特性 ===========
OHC 将在商用硬件和使用非统一内存架构的大型系统上提供良好的性能。目前尚无性能测试结果可用,您可以尝试使用 ohc-benchmark 工具。请参阅下面的说明。有关速度的非常基本印象,请参阅 Benchmarking 部分。
OHC 提供了两种实现,用于不同的缓存项特征: - linked 实现为每个项单独分配堆外内存,最适用于中型和大型项。 - chunked 实现为每个哈希段整体分配堆外内存,适用于小型项。 - 片段数量通过 org.caffinitas.ohc.OHCacheBuilder 配置,默认为 # of cpus * 2,必须是 2 的幂。 项通过 64 位哈希码的最有意义位来分布到各个片段中。 对每个片段的访问均进行同步。
每个哈希映射项都被单独分配。当这些项不再被映射本身或任何外部引用(如“org.caffinitas.ohc.DirectValueAccess”或“org.caffinitas.ohc.CacheSerializer”)引用时,它们就会被释放(卸载)。此实现的设计将一个分段的锁定时间缩短到非常短的时间。放置/替换操作首先分配内存,然后调用“org.caffinitas.ohc
暂无开放 Issues,或尚未同步最近议题。