1. 缓存的作用
- 减少服务器的访问压力
- 减少客户端的网络延时
- 减少网络带宽的消耗
2. 缓存的过期和淘汰
3. 常见的缓存架构
- 二级缓存架构:本地缓存 + 集中式缓存
- 存在问题:数据不一致的问题
- 解决方案:通过zk监听集中式缓存变化,来通知本地缓存的更新
4. 常见缓存使用场景
- 数据库中的热数据
- 列表排序分页
- 计数器
- 详情页面
- 分布式session(session共享问题)
- 热点排名
- 发布订阅
- 分布式锁
5. 关于缓存方面的测试点分析
1. 从缓存的特点和作用来想测试点
- 缓存大小多少,过期时间获取有哪些过期策略
- 主被动删除缓存后,相应的业务逻辑是否符合期望
- 首次访问后,再次访问速度是否快了
- 数据一致性问题的验证
- 关闭浏览器再次打开对缓存的影响,对业务的影响
2. 从异常情况考虑,也就是将一般默认没有问题的因素变成一个问题因素
- 网络原因,无法加载缓存
- 服务器原因,无法加载缓存
- 对本地缓存文件无读写权限
- 手动主动触发缓存刷新机制
3. 对于http的缓存机制单独考虑