面试题答案
一键面试时间驱动缓存失效策略原理
设定一个固定的时间周期,当缓存数据在缓存中存在的时间达到该设定周期后,缓存自动失效。例如设置缓存有效期为1小时,那么1小时后无论该缓存数据是否被使用,都会失效。
事件驱动缓存失效策略原理
当特定的事件发生时,才会使缓存失效。这些事件可以是数据的更新、删除等操作。比如数据库中某条记录被更新,就触发与之相关的缓存失效。
适合时间驱动策略的场景
- 新闻资讯类:新闻内容的时效性较强,但短期内不会频繁变动。比如某新闻网站缓存新闻文章,设置缓存时间为1小时,在这1小时内用户访问该新闻,直接从缓存获取,提高访问速度,1小时后缓存失效,重新从数据库获取最新内容。
- 统计报表类:例如每月生成的销售统计报表,在一个月内数据相对稳定,可设置缓存有效期为1个月,期间用户查询报表从缓存获取,提升查询效率。
适合事件驱动策略的场景
- 电商商品详情页:当商品信息(如价格、库存)发生变化时,立即使商品详情页的缓存失效,保证用户看到的是最新商品信息。
- 社交平台个人资料页:当用户修改个人资料(如昵称、头像),立刻触发个人资料页缓存失效,确保其他用户查看该用户资料时获取到最新内容。