开发者社区> 问答> 正文

为什么Guava Cache被Caffeine所取代?

为什么Guava Cache被Caffeine所取代?

展开
收起
想去床上睡觉 2024-06-26 10:23:00 6 0
1 条回答
写回答
取消 提交回答
  • 首先看一组数据:image.png
    从官方的压测结果来看,无论是全读场景、全写场景、或者读写混合场景,无论是8个线程,还是16个线程,Caffeine都是完胜、碾压Guava,简直就是拿着望远镜都看不到对手。
    而且官方介绍Caffeine是基于JDK8的高性能本地缓存库,提供了几乎完美的命中率。它有点类似JDK中的ConcurrentMap,实际上,Caffeine中的LocalCache接口就是实现了JDK中的ConcurrentMap接口,但两者并不完全一样。最根本的区别就是,ConcurrentMap保存所有添加的元素,除非显示删除之(比如调用remove方法)。而本地缓存一般会配置自动剔除策略,为了保护应用程序,限制内存占用情况,防止内存溢出。而且Caffeine提供了灵活的构造方法。所以这就是原因
    参考地址: 参考

    2024-06-26 17:16:07
    赞同 1 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载