我开发了一个Python 客户端库,它是 Web API 的客户端包装器:一个不错的功能是本地缓存机制:当库客户端在 Web API 上调用相同的请求时,这将节省时间和带宽在不同的时间。
我的要求很少
- 应开发缓存(无外部库)并运行 Python 2.6/2.7 环境
- 该库应提供统一的接口,以便可以使用外部缓存机制(例如:memcached)包装器,这些包装器将被依赖注入
- 缓存应该是线程安全的
- 要缓存的内容将是 Web API 响应的 JSON 有效负载。
- Web API 提供的数据在不同的时间老鼠会有所不同:例如,当前观察到的一个城市的天气可能每小时变化一次,而 15 天的天气预报可能每 5 天左右变化一次。
可以使用的最简单的算法是什么?
我在考虑 LRU(最近最少使用)算法,但我想可以评估其他替代方案 - 我根本不是缓存专家!