Skip to main content
 首页 » 编程设计

python之基于文件的缓存在 python 中过期

2025年05月04日8mq0036

为了生成统计信息,我向第 3 方 API 发出了 100 个 XMLRPC 请求。

因为我想快速计算统计数据以便能够使用它,所以我想缓存来自 API 的响应。

API HTTP header 的摘录:

Content-Type: application/xml; charset=utf-8 
Connection: keep-alive 
ETag: "c539d317b07c640c123e287304d2c568" 
P3P: CP="NOI DSP COR NID ADMa OPTa OUR NOR" 
Content-Length: 4089 
Cache-Control: private, max-age=0, must-revalidate 

我需要:

  • python 2.6 的解决方案
  • 由于 API 响应相当大,缓存应该写在磁盘上(没有内存缓存)
  • 我想让 api 响应过期,例如1天后
  • 应删除光盘上的旧响应,以免缓存无休止地增长

我即将编写自己的东西,因为它似乎不太复杂,但我认为这可能是一个非常常见的用例,因此可能已经存在一些东西。

请您参考如下方法:

好吧,既然没有人想出一个好的现有模块,我自己写了一个。

虽然不是特别漂亮,但它可以完成我认为的工作。非常欢迎反馈

http://pastie.org/2842063