如何在python中维护缓存

时间:2013-12-05 07:54:16

标签: python caching

我有像

这样的要求

我第一次运行这个过程,我需要设置一个= 1

剩下的时间我运行相同的过程,我需要设置一个= 2

是否可以维护缓存,告知进程第二次运行。

我不希望在我的目录结构中创建另一个物理文件。

我在互联网上搜索,但始终在过程中找到了缓存。

提前致谢

3 个答案:

答案 0 :(得分:6)

在完全独立的进程执行之间保留数据的方法是:

  • 保存文件。

  • 将数据移交给另一个进程,例如Memcached或Redis实例,或数据库,这会将数据保存在内存中和/或将其写入磁盘。

  • 以其他一些更不寻常的方式记录数据,例如更改正在运行的操作系统的环境,打印出数据或以其他方式显示数据,以便操作人员可以跟踪它,或类似的东西

当您使用“缓存”一词并声明您不希望将数据写入磁盘时,首先想到的是memcached或其他一些内存缓存。但是,任何基于文件的解决方案肯定不会比设置和维护内存中的键值存储更复杂。

您选择哪种解决方案部分取决于“第二次”的含义。第二次?在给定的计算机上第二次?重启后第二次?自手动复位?记录数据的不同方法适合不同的存储要求。

答案 1 :(得分:1)

如果你的应用程序真的只是a = 1而a = 2使用文件就像任何东西一样好,否则请参考:http://docs.python.org/2/library/persistence.html其他持久性方法。

答案 2 :(得分:0)

进程内缓存的数据随进程一起消失。您必须将此信息缓存在其他位置,因为您希望它持续的时间比流程的持续时间长。文件似乎合理。