如何用 Redis 解决缓存穿透?请给出至少 2 种方案并说明优缺点。
How do you prevent cache penetration with Redis? Provide at least two approaches with pros/cons.
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: IBM Interview, Technical
标签: Redis, Cache Penetration, Bloom Filter
目标公司: IBM
参考答案摘要
答案 缓存穿透:大量请求查询“必定不存在”的 key,绕过缓存直打 DB。 方案 1:缓存空值(negative caching),为不存在结果设置短 TTL。优点简单;缺点要注意空值缓存雪崩与误缓存。 方案 2:布隆过滤器(Bloom Filter)前置拦截。优点减压明显;缺点有误判率、需要维护/重建。 方案 3:参数校验 + 限流/熔断(保护 DB)。 Answer Cache penetra...
答题技巧
技术面试题建议先理清思路再作答,从基础概念讲起,逐步深入。可以结合实际项目经验解释技术原理,展示你的理解深度和实践能力。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案、收藏题目并进行模拟面试练习。