MST
星途 面试题库

面试题:缓存设计之中等难度:常见缓存失效策略及应用场景

请列举至少三种常见的缓存失效策略,并分别阐述它们适用的应用场景。
49.5万 热度难度
后端开发缓存设计

知识考点

AI 面试

面试题答案

一键面试
  • FIFO(先进先出)策略
    • 适用场景:适用于对缓存数据新鲜度要求不高,但需要保证缓存空间有效利用的场景。比如日志记录系统,新的日志不断产生,旧的日志相对不那么重要,先进入缓存的日志可以先被淘汰,以腾出空间给新日志。
  • LRU(最近最少使用)策略
    • 适用场景:广泛应用于各种需要优先保留近期使用过的数据的场景。例如浏览器缓存,用户近期访问过的网页资源更有可能再次被访问,因此使用LRU策略可以优先保留这些资源,提高缓存命中率。
  • LFU(最不经常使用)策略
    • 适用场景:适合长期内访问频率较低的数据优先被淘汰的场景。比如一些低频访问的历史文档存储在缓存中,随着时间推移,如果其访问频率一直很低,就可以通过LFU策略将其淘汰,为更常用的数据腾出空间。
  • 过期时间策略
    • 适用场景:适用于数据具有时效性的场景。如新闻资讯类应用的缓存,新闻内容有一定的有效期,超过这个时间后就不再具有价值,设置过期时间可以及时清理旧新闻,保证缓存中的数据都是较新且有意义的。