Django 缓存丢失密钥

Django cache loses keys

我有一个使用文件系统缓存的 Django 安装。缓存系统由一系列不同的视图使用。当在缓存中找不到密钥并因此重新生成时,放置各种日志来记录,我发现密钥经常丢失。我没有任何 "cache delete" 并且所有密钥都存储到最后 24 小时,但在日志中它们似乎都偶尔重新生成一次。

有没有像"don't store more than n keys"或"more than n megabytes of data"之类的隐藏参数?我有点迷路了,因为钥匙好像丢了,我不知道什么时候丢了,为什么丢了。

此外,我最初选择缓存位置“/tmp/django-cache”,所以我认为可能 Linux 正在清理 tmp 目录,但将位置更改为 "safer"我的主目录中的一个不会改变异常。

此外,完整的缓存目录大约有 25Mb,所以我不认为需要清理它,因为它太大了。

有什么想法吗?

在为 locmemfilesystemdatabase 后端删除旧值之前缓存中允许的最大项目数为 300。您可以通过设置 OPTIONS > MAX_ENTRIES

来自Django documentation

MAX_ENTRIES: The maximum number of entries allowed in the cache before old values are deleted. This argument defaults to 300.