本地缓存三巨头:Caffeine vs Guava Cache vs Ehcache——到底谁才是王者
引言 面试题:为什么不用本地缓存?答:分布式系统都用 Redis。 但现实是——很多场景本地缓存仍然是刚需: 配置数据、字典数据——QPS 高但极少变更,每次走 Redis 多一跳网络 热点商品信息——Redis 也会被打爆,本地缓存兜底 计算结果缓存——复杂的统计结果,本地存一份避免重复计算 Java 生态里三大本地缓存各有拥趸: Guava Cache——老牌选手,曾经的王者 Ehcache——老牌中的老牌,功能最全 Caffeine——新生代,号称"Guava Cache 的替代品" 到底选谁?社区争论很多,但缺少实测数据支撑。 这篇文章从 6 个维度做实测对比:读写吞吐、内存占用、过期策略、淘汰算法、Spring Cache 集成、异步加载。每个维度都有压测数据,看完你心里就有答案了。 一、三巨头简介 1.1 Guava Cache 出身:Google Guava 工具库的一部分,2010 年左右推出。 定位:简单易用的进程内缓存,API 设计优雅。 特点: API 简洁,CacheBuilder 链式调用 支持 TTL、TTI、基于引用的回收 支持 CacheLo....