公开演示 · 概念讲解

理解缓存

缓存就是把常用的结果先放在手边,下次不用重做。

像一张读书卡片

第一次找某本书的出版年份,你翻开书查了一次。把年份写在卡片上,下次直接看卡片就好。

1. 先看卡片

已有记录,直接使用。

2. 没有再查书

重新查找需要的内容。

3. 写回卡片

为下一次查询保存结果。

十行代码里的缓存

cache = {}

def get_year(book_id):
    if book_id in cache:
        return cache[book_id]

    year = lookup_year(book_id)
    cache[book_id] = year
    return year

lookup_year 是示意的查询函数,这段代码用于解释流程,不是完整程序。

别忘了过期问题

如果原始数据变了,卡片也要更新。缓存的难点不仅是“记住”,还有“什么时候忘掉”。