面试真题

后端 · 中等 · 百度

为什么 Caffeine 做一级缓存,Redis 做二级缓存?

中等 后端 🎤 百度
参考答案
结论:Caffeine作一级本地缓存极致低延迟,Redis作二级分布式缓存保证共享与容量,多级缓存兼顾性能与一致性。原理:1. Caffeine基于Java堆内存,访问纳秒级,使用W-TinyLFU淘汰策略命中率高,但仅单机、重启丢失;2. Redis基于内存+网络,毫秒级,支持多实例共享、持久化、集群,但存在序列化与网络开销;3. 架构上先查Caffeine,未命中查Redis,再未命中查DB并回写。对比:纯本地缓存无法在集群间同步,纯Redis则每次请求都走网络。示例:商品详情页用Caffeine抗热点,Redis存全量,大幅降低RT。
题目整理自公开面经,答案由校招宝自研生成,仅供参考