· 该项目基于BigCache设计思路,通过将缓存划分为512个Bucket。每个Bucket都有自己的锁,实现在多CPU性能扩展。同时采用多Hash结构优化了实现了SetM2One 方法,优化了内存浪费和简化批量操作,提高操作效率,节省内存提高并发性能!
· 项目特点
· 高性能:FastCache在多核CPU上变现优异,能够充分发挥多核处理并行执行能力。
· 内存高效 : 64kb的chunks减少内存碎片,降低内存使用总量。同时在SetM2One方法下,Key-Value映射内存节省更加明显。
· 低GC开销 : 通过延时删除机制,FastCache 能够在合适的时机清理过期数据,避免了频繁的垃圾回收(GC)操作。这种机制减少了 GC 的触发频率,降低了因 GC 导致的程序暂停时间,从而提升了系统的整体性能。
· 查询性能高效 : 在大多数情况下查询时间复杂度为O(1), 在缓存命中率情况下(概率极小)查询时间复杂度为O(n)。
· 线程安全 : 持高并发操作,适用于多线程环境。每个 Bucket 的独立锁设计确保了在高并发场景下的线程安全,避免了数据竞争和死锁问题。